//---------------------------------------------------------------------------

#ifndef osx_InstallBoxH
#define osx_InstallBoxH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------


#include "font.h"

#include "gui_bmpbutton.h"
#include "gui_button.h"
#include "gui_radio_button.h"
#include "gui_scroll_v.h"
#include "gui_check_button.h"
#include "gui_Label.h"
#include "gui_edit.h"

//[2011.01.15.토][추가!!!]
#include "GBalloonBox.h"
#include <ExtCtrls.hpp>


class Tosx_InstallBox_Form : public TForm
{
__published:	// IDE-managed Components
    TTimer *captionMoveTimer;
        void __fastcall FormMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y);
        void __fastcall FormMouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y);
        void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y);
    void __fastcall captionMoveTimerTimer(TObject *Sender);
private:	// User declarations
public:		// User declarations

        __fastcall Tosx_InstallBox_Form(TComponent* Owner);

        //[2012.04.30.월][완료!!!]
        __fastcall ~Tosx_InstallBox_Form(void);

        //[서브클래싱]
        //{
            //[2012.05.20.일][완료!!!]
            void __fastcall WndProc(Messages::TMessage &Message);

        //}

        //[VAR]
        //{
            //[환경변수]
            //{
                //[2007.10.02.화][추가!!!]
                struct  IDE_OPTION   *_ide_option;

            //}

            //[실제 그리는 영역]
            //{
                Graphics::TBitmap  *_bmp_;

            //}

            //[사용글꼴]
            //{
                struct FONTPACK     _font;

            //}

            //caption 에 표시할 문자열을 기록한다.
            char   _caption[100];

            int    _caption_height;
            int    _caption_width;

            //caption 을 마우스로 끄는 경우 true.
            bool   _caption_selected;

            //[제목줄 이동 관련]
            //{
                //[2018.03.17.토][추가!!!]
                int  deltaLeft;
                int  deltaTop;

            //}
            
            //[내부 컨트롤]
            //{
                //닫기 버튼.
                Tgui_bmpbutton_Form  *_close_bmpbtns;

            //}

            //[설정 컨트롤]
            //{
                //각 배경색은 희미하게 설정한다.
                int  _colorBack;

                //[os\osx] 폴더 안의 [폴더목록] 을 관리한다.
                TStringList  *osxList;

                //[설명 라벨]
                //{
                    //간단한 설명글을 담는다.
                    Tgui_Label_Form     *title_Label;

                //}

                //[전체 배경]
                //{
                    //전체 컨트롤을 담는다.
                    Tgui_Label_Form     *base_Label;

                //}

                //[수직 줄이동자]
                //{
                    Tgui_scroll_v_Form  *scroll_V;

                //}

                //[설계묶음 버튼]
                //{
                    //[!]{---------------------------------------------------------------
                    //[wizard] 폴더안의 각각의 폴더가 전부 해당 [설계묶음] 이 되므로
                    //사전에 확정하지 않고 이 [대화상자] 가 생성될때 이 목록을 읽어 들여
                    //해당 수 만큼 동적 생성한다.
                    //즉, [버튼 이름] 이 해당 [설계묶음] 의 이름이 된다.
                    //}------------------------------------------------------------------

                    Tgui_button_Form   **osx_Btns;

                    //눌린버튼의 번호를 기록한다(BASE : -1).
                    int                  selIndex;

                //}

            //}

            //[설명 풍선 도움말]
            //{
                //[2011.01.15.토][추가!!!]{----------------------------------------
                //각 VMOS 를 설명할때 사용되는 별도 기능의 [풍선도움말] 을 만든다.
                //이것은 IDE 전체의 [풍선도움말] 과는 다른 별도의 기능이다.
                //색은 전체 환경색의 영향을 받는다.
                //}----------------------------------------------------------------

                TGBalloonBox_Form    *_descript_BalloonBox;

            //}

        //}

        //[FUNCTION]
        //{
            void __fastcall _FormCut(void);
            void __fastcall _Draw(void);
            void __fastcall _Border(void);
            void __fastcall _Shape(void);


            //[2007.12.14.금][완료!!!]
            void __fastcall _Caption(char  *pCaption);

            //[2007.12.14.금][완료!!!]
            void __fastcall _Width(int  pWidth);

            //[2007.12.14.금][완료!!!]
            void __fastcall _Height(int  pHeight);

            //[2012.05.07.월][완료!!!]
            void __fastcall _Show(void);

        //}

        //[동작홤수들]
        //{
            //[2007.10.02.화][완료!!!]
            void __fastcall _EVENT_CloseButton_Click(void);

            //[2009.05.27.수][처리중!!!]
            void __fastcall _EVENT_Scroll_V(void);

            //[2009.05.27.수][완료!!!]
            void __fastcall _EVENT_Down_osx_Btns(void);

            //[2010.12.08.수][완료!!!]
            void __fastcall _EVENT_Click_osx_Btns(void);

            //[2018.04.20.금][완료!!!]
            void __fastcall _EVENT_MouseEnter_osx_Btns(void);

            //[2018.04.20.금][완료!!!]
            void __fastcall _EVENT_MouseLeave_osx_Btns(void);

        //}


};
//---------------------------------------------------------------------------
extern PACKAGE Tosx_InstallBox_Form *osx_InstallBox_Form;
//---------------------------------------------------------------------------
#endif
