📄 ide.cpp
字号:
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 + -