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

📄 dirdialog.cpp

📁 用于开发Atmel的AVR系列单片机的GCC集成开发环境
💻 CPP
字号:
/**************************************************************************
Project: WinAVRIDE        Class: Directory Dialog
Copyright (C) 2005  Philipp Schober

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

History
19.Feb 2005 - First Release (V1.0)
****************************************************************************/

#include <vcl.h>
#include <FileCtrl.hpp>
#pragma hdrstop

#include "DirDialog.h"
#include "MainForm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TDirDlg *DirDlg;
//---------------------------------------------------------------------------
__fastcall TDirDlg::TDirDlg(TComponent* Owner)
        : TForm(Owner)
{

}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::OkButtonClick(TObject *Sender)
{
 Bin_Dir = BinDir->Text;
 Inc_Dir = IncDir->Text;
 Lib_Dir = LibDir->Text;
 ModalResult = mrOk;
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::CancelButtonClick(TObject *Sender)
{
 ModalResult = mrCancel;        
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::ShowWindow (void)
{
 Position = poScreenCenter;
 BinDir->Text = Bin_Dir;
 IncDir->Text = Inc_Dir;
 LibDir->Text = Lib_Dir;
 ShowModal ();
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::BinButtonClick(TObject *Sender)
{
 AnsiString temp;

 temp = ExcludeTrailingBackslash (BinDir->Text);
 if (SelectDirectory ("Select Binary Directory", "", temp))
 {
  BinDir->Text = IncludeTrailingBackslash (temp);
 }
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::SaveSettings (TIniFile *settings)
{
 AnsiString temp;

 temp = Bin_Dir;
 settings->WriteString ("Directories", "BinDir", temp);
 temp = Inc_Dir;
 settings->WriteString ("Directories", "IncDir", temp);
 temp = Lib_Dir;
 settings->WriteString ("Directories", "LibDir", temp);
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::LoadSettings (TIniFile *settings)
{
 AnsiString temp;

 temp = settings->ReadString ("Directories", "BinDir", 0);
 if (temp == NULL) temp = ExtractFilePath (Application->ExeName);
 Bin_Dir = IncludeTrailingBackslash (temp);
 temp = settings->ReadString ("Directories", "IncDir", NULL);
 if (temp == NULL) temp = ".";
 Inc_Dir = temp;
 temp = settings->ReadString ("Directories", "LibDir", NULL);
 if (temp == NULL) temp = ".";
 Lib_Dir = temp;
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::IncButtonClick(TObject *Sender)
{
 AnsiString temp, temp2;

 temp = IncDir->Text;
 if (SelectDirectory ("Select Include Directory", "", temp2))
 {
  if (temp == "") temp = ExcludeTrailingBackslash (temp2);
  else temp += ";" + ExcludeTrailingBackslash (temp2);
  IncDir->Text = temp;
 }
}
//---------------------------------------------------------------------------
void __fastcall TDirDlg::LibButtonClick(TObject *Sender)
{
 AnsiString temp, temp2;

 temp = LibDir->Text;
 if (SelectDirectory ("Select Library Directory", "", temp2))
 {
  if (temp == "") temp = ExcludeTrailingBackslash (temp2);
  else temp += ";" + ExcludeTrailingBackslash (temp2);
  LibDir->Text = temp;
 }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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