⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ide.~cpp

📁 嵌入式IDE
💻 ~CPP
📖 第 1 页 / 共 3 页
字号:
                FileBrowserForm->Show();
        }
        FileBrowserForm->IsShow = true;
    }
    else
    {
        FileBrowserForm->Hide();
        FileBrowserForm->IsShow = false;
    }
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::ProjectWindowShow(bool IsShow)
{
    if(IsShow)
    {
        if(ProjectWindowForm == NULL)
            throw EInvalidCast("");
        if(dynamic_cast<TPageControl*>(ProjectWindowForm->HostDockSite) != NULL)
            static_cast<TTabDockHost*>(ProjectWindowForm->HostDockSite->Owner)->Show();
        else if( (dynamic_cast<TConJoinDockHost*>(ProjectWindowForm->HostDockSite) != NULL) && !ProjectWindowForm->HostDockSite->Visible)
        {
            ProjectWindowForm->HostDockSite->Show();
            (static_cast<TConJoinDockHost*>(ProjectWindowForm->HostDockSite))->UpdateCaption(NULL);
            ProjectWindowForm->Show();
        }
        else
        {
            if((dynamic_cast<TPanel*>(ProjectWindowForm->HostDockSite) != NULL)&& ((ProjectWindowForm->HostDockSite->Height == 0) | (ProjectWindowForm->HostDockSite->Width == 0)))
                IdeForm->ShowDockPanel((static_cast<TPanel*>(ProjectWindowForm->HostDockSite)), true, ProjectWindowForm);
            else
                ProjectWindowForm->Show();
        }
        ProjectWindowForm->IsShow = true;
    }
    else
    {
        ProjectWindowForm->Hide();
        ProjectWindowForm->IsShow = false;
    }
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::OutputWindowShow(bool IsShow)
{
    if(IsShow)
    {
        if(OutputWindowForm == NULL)
            throw EInvalidCast("");
        if(dynamic_cast<TPageControl*>(OutputWindowForm->HostDockSite) != NULL)
            static_cast<TTabDockHost*>(OutputWindowForm->HostDockSite->Owner)->Show();
        else if( (dynamic_cast<TConJoinDockHost*>(OutputWindowForm->HostDockSite) != NULL) && !OutputWindowForm->HostDockSite->Visible)
        {
            OutputWindowForm->HostDockSite->Show();
            (static_cast<TConJoinDockHost*>(OutputWindowForm->HostDockSite))->UpdateCaption(NULL);
            OutputWindowForm->Show();
        }
        else
        {
            if((dynamic_cast<TPanel*>(OutputWindowForm->HostDockSite) != NULL)&& ((OutputWindowForm->HostDockSite->Height == 0) | (OutputWindowForm->HostDockSite->Width == 0)))
                IdeForm->ShowDockPanel((static_cast<TPanel*>(OutputWindowForm->HostDockSite)), true, OutputWindowForm);
            else
                OutputWindowForm->Show();
        }
        OutputWindowForm->IsShow = true;
    }
    else
    {
        OutputWindowForm->Hide();
        OutputWindowForm->IsShow = false;
    }
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::WatchWindowShow(bool IsShow)
{
    if(IsShow)
    {
        if(WatchWindowForm == NULL)
            throw EInvalidCast("");
        if(dynamic_cast<TPageControl*>(WatchWindowForm->HostDockSite) != NULL)
            static_cast<TTabDockHost*>(WatchWindowForm->HostDockSite->Owner)->Show();
        else if( (dynamic_cast<TConJoinDockHost*>(WatchWindowForm->HostDockSite) != NULL) && !WatchWindowForm->HostDockSite->Visible)
        {
            WatchWindowForm->HostDockSite->Show();
            (static_cast<TConJoinDockHost*>(WatchWindowForm->HostDockSite))->UpdateCaption(NULL);
            OutputWindowForm->Show();
        }
        else
        {
            if((dynamic_cast<TPanel*>(WatchWindowForm->HostDockSite) != NULL)&& ((WatchWindowForm->HostDockSite->Height == 0) | (WatchWindowForm->HostDockSite->Width == 0)))
                IdeForm->ShowDockPanel((static_cast<TPanel*>(WatchWindowForm->HostDockSite)), true, WatchWindowForm);
            else
                WatchWindowForm->Show();
        }
        WatchWindowForm->IsShow = true;
    }
    else
    {
        WatchWindowForm->Hide();
        WatchWindowForm->IsShow = false;
    }
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::FileBrowserWindowClick(TObject *Sender)
{
    FileBrowserWindowShow(FileBrowserWindow->Checked);
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::StatusBarShowClick(TObject *Sender)
{
    if(StatusBarShow->Checked)
        StatusBar->Visible = true;
    else
        StatusBar->Visible = false;
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::ProjectWindowClick(TObject *Sender)
{
    ProjectWindowShow(ProjectWindow->Checked);
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::OutputWindowClick(TObject *Sender)
{
    OutputWindowShow(OutputWindow->Checked);    
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::LeftSplitterCanResize(TObject *Sender,
      int &NewSize, bool &Accept)
{
    if(NewSize < 50)
        Accept = false;
    else
        LeftDockPanelWidthHistory = NewSize;
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::BottomSplitterCanResize(TObject *Sender,
      int &NewSize, bool &Accept)
{
    if(NewSize < 50)
        Accept = false;
    else
        BottomDockPanelHeightHistory = NewSize;
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::RightSplitterCanResize(TObject *Sender,
      int &NewSize, bool &Accept)
{
    if(NewSize < 50)
        Accept = false;
    else
        RightDockPanelWidthHistory = NewSize;           
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::WatchWindowClick(TObject *Sender)
{
    WatchWindowShow(WatchWindow->Checked);
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::SpeedButton12Click(TObject *Sender)
{
    LogoForm->Show();
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::FormClose(TObject *Sender, TCloseAction &Action)
{
    DragAcceptFiles(this->Handle,false);
    WriteIDEConfig();
    delete EditorList;   
}
//---------------------------------------------------------------------------
MESSAGE void __fastcall TIdeForm::WMDropFiles(TMessage &Msg)
{
    char  FileName[128];
    int   i, sum;

    sum = DragQueryFile( HDROP(Msg.WParam), 0xFFFFFFFF, NULL, 0 );
    for( i=0; i<sum; i++ )
    {
        DragQueryFile( HDROP(Msg.WParam), i, FileName, 128 );
        FileBrowserForm->ListBox->Items->Add(AnsiString(FileName));
        IdeOpenFile(FileName); 
    }
    DragFinish(HDROP(Msg.WParam));
}
//---------------------------------------------------------------------------

void __fastcall TIdeForm::SpeedButton5Click(TObject *Sender)
{
    LeftDockPanelWidthHistory = 303;
    ProjectWindowForm->ManualDock(LeftDockPanel,NULL,alNone);
    FileBrowserForm->ManualDock(LeftDockPanel,NULL,alNone);
}
//---------------------------------------------------------------------------
void __fastcall TIdeForm::WriteIDEConfig(void)
{
    TIniFile *IniFile;
    TPanel * APanel; int PanelID;

    IniFile = new TIniFile(ChangeFileExt(Application->ExeName,".ini"));

    //Embedded IDE Setting
    if(IdeForm->WindowState != wsMaximized)
    {
        IniFile->WriteInteger("Embedded IDE Setting","IDE Form Width",IdeForm->Width);
        IniFile->WriteInteger("Embedded IDE Setting","IDE Form Height",IdeForm->Height);
        IniFile->WriteInteger("Embedded IDE Setting","IDE Form Top",IdeForm->Top);
        IniFile->WriteInteger("Embedded IDE Setting","IDE Form Left",IdeForm->Left);
    }
    IniFile->WriteInteger("Embedded IDE Setting","IDE Form State",IdeForm->WindowState);
    IniFile->WriteInteger("Embedded IDE Setting","IDE Form Style",IdeForm->FormStyle);
    IniFile->WriteBool("Embedded IDE Setting","StatusBar Show",StatusBar->Visible);


    IniFile->WriteInteger("Embedded IDE Setting","LeftDockPanelWidthHistory",LeftDockPanelWidthHistory);
    IniFile->WriteInteger("Embedded IDE Setting","BottomDockPanelHeightHistory",BottomDockPanelHeightHistory);
    IniFile->WriteInteger("Embedded IDE Setting","RightDockPanelWidthHistory",RightDockPanelWidthHistory);

    IniFile->WriteBool("Embedded IDE Setting","ProjectWindow Show",ProjectWindowForm->IsShow);
    IniFile->WriteBool("Embedded IDE Setting","ProjectWindow Dock",!ProjectWindowForm->Floating);
    IniFile->WriteInteger("Embedded IDE Setting","ProjectWindow Width",ProjectWindowForm->Width);
    IniFile->WriteInteger("Embedded IDE Setting","ProjectWindow Height",ProjectWindowForm->Height);
    IniFile->WriteInteger("Embedded IDE Setting","ProjectWindow Top",ProjectWindowForm->Top);
    IniFile->WriteInteger("Embedded IDE Setting","ProjectWindow Left",ProjectWindowForm->Left);
    APanel = (static_cast<TPanel*>(ProjectWindowForm->HostDockSite));
    PanelID = 0;
    if(APanel == IdeForm->LeftDockPanel)
        PanelID = 1;
    else if(APanel == IdeForm->BottomDockPanel)
        PanelID = 2;
    else if(APanel == IdeForm->RightDockPanel)
        PanelID = 3;
    IniFile->WriteInteger("Embedded IDE Setting","ProjectWindow DockID",PanelID);


    IniFile->WriteBool("Embedded IDE Setting","OutputWindow Show",OutputWindowForm->IsShow);
    IniFile->WriteBool("Embedded IDE Setting","OutputWindow Dock",!OutputWindowForm->Floating);
    IniFile->WriteInteger("Embedded IDE Setting","OutputWindow Width",OutputWindowForm->Width);
    IniFile->WriteInteger("Embedded IDE Setting","OutputWindow Height",OutputWindowForm->Height);
    IniFile->WriteInteger("Embedded IDE Setting","OutputWindow Top",OutputWindowForm->Top);
    IniFile->WriteInteger("Embedded IDE Setting","OutputWindow Left",OutputWindowForm->Left);
    APanel = (static_cast<TPanel*>(OutputWindowForm->HostDockSite));
    PanelID = 0;
    if(APanel == IdeForm->LeftDockPanel)
        PanelID = 1;
    else if(APanel == IdeForm->BottomDockPanel)
        PanelID = 2;
    else if(APanel == IdeForm->RightDockPanel)
        PanelID = 3;
    IniFile->WriteInteger("Embedded IDE Setting","OutputWindow DockID",PanelID);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -