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

📄 configurationsettings.cpp

📁 刻录机源码
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include "unit1.h"

#include "ConfigurationSettings.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmSettings *frmSettings;

__fastcall TfrmSettings::TfrmSettings(TComponent* Owner)
        : TForm(Owner)
{
}

void __fastcall TfrmSettings::FormShow(TObject *Sender)
{
  cJoliet->Checked = Form1->mcdb->JolietFileSystem;
  cQuickSaveISO->Checked = QuickSaveISO;
  cCloseDisc->Checked = Form1->mcdb->FinalizeDisc;
  eVolLabel->Text = Form1->mcdb->IdVolume;
  cTestWrite->Checked = Form1->mcdb->TestWrite;
  cOPC->Checked = Form1->mcdb->PerformOPC;
  cBootable->Checked = Form1->mcdb->Bootable;
  Label2->Caption = Form1->mcdb->BootImage;
  eSession->Text = IntToStr(SessionToImport);
  cArchiveOnly->Checked = oArchiveFiles;
  cUnderrunProtection->Checked = Form1->mcdb->UnderrunProtection;
  cUnderrunProtection->Enabled = Form1->mcdb->DeviceCapabilities.Contains(dcUnderrunProtection);
  sCacheSize->Position = Form1->mcdb->CacheSize / 1024 / 1024;

}

void __fastcall TfrmSettings::Button2Click(TObject *Sender)
{
 Close();
}

void __fastcall TfrmSettings::Button1Click(TObject *Sender)
{
  TIniFile *ini;

  Form1->mcdb->JolietFileSystem = cJoliet->Checked;
  Form1->mcdb->IdVolume = eVolLabel->Text;
  Form1->mcdb->FinalizeDisc = cCloseDisc->Checked;
  Form1->mcdb->UnderrunProtection = cUnderrunProtection->Checked;
  Form1->mcdb->TestWrite = cTestWrite->Checked;
  Form1->mcdb->PerformOPC = cOPC->Checked;
  Form1->mcdb->CacheSize = sCacheSize->Position * 1024 * 1024;
  Form1->mcdb->Bootable = cBootable->Checked;
  Form1->mcdb->BootImage = Label2->Caption;
  oArchiveFiles = cArchiveOnly->Checked;
  ccEject = cEject->Checked;
  ccShowFiles = cShowFiles->Checked;
  ccImportSession = cImportSession->Checked;

  if( (cImportSession->Checked) && (Trim(eSession->Text) != "") && (StrToInt(eSession->Text) == 0))
    ShowMessage("Session to import; Zero means not to import any session");
  if (cImportSession->Checked)
    SessionToImport = StrToInt(eSession->Text);
  else
    SessionToImport = 0;
  QuickSaveISO = cQuickSaveISO->Checked;
  oArchiveFiles = cArchiveOnly->Checked;


  ini = new TIniFile("MCDB.ini");

  ini->WriteBool("Options", "ArchiveFiles", cArchiveOnly->Checked);
  ini->WriteBool("Options", "ImportSession", oImportSession);
  ini->WriteBool("Options", "SavePath", Form1->cPathInfo->Checked);
  ini->WriteBool("Options", "CloseTrack", Form1->mcdb->FinalizeTrack);
  ini->WriteBool("Options", "CloseDisc", Form1->mcdb->FinalizeDisc);
  ini->WriteBool("Options", "EjectDisc", cEject->Checked);
  ini->WriteBool("Options", "JolietFS", cJoliet->Checked);
  ini->WriteBool("Options", "Bootable", cBootable->Checked);
  ini->WriteBool("Options", "TestWrite", cTestWrite->Checked);
  ini->WriteBool("Options", "QuickSaveISO", cQuickSaveISO->Checked);
  ini->WriteBool("Options", "ShowFiles", cShowFiles->Checked);
  ini->WriteBool("Options", "PerformOPC", cOPC->Checked);
  ini->WriteString("Options", "SessionNo", eSession->Text);
  ini->WriteBool("Options", "ImportSession", cImportSession->Checked);
  ini->WriteString("Options", "BootImage", Label2->Caption);
  ini->WriteString("Options", "VolumeLable", eVolLabel->Text);
  ini->WriteInteger("Options", "CacheSize", Form1->mcdb->CacheSize);

  delete ini;

  Close();



}

void __fastcall TfrmSettings::Button3Click(TObject *Sender)
{
  Form1->mcdb->CloseTrack(false, false, false, 0);
}

void __fastcall TfrmSettings::cImportSessionClick(TObject *Sender)
{
   eSession->Enabled = cImportSession->Checked;
}

void __fastcall TfrmSettings::sCacheSizeChange(TObject *Sender)
{
   Label3->Caption = IntToDec(sCacheSize->Position, 2, " ")+" MB";
}

void __fastcall TfrmSettings::cBootableClick(TObject *Sender)
{
  if (cBootable->Checked)
  {
    dlg->FileName = Label2->Caption;
    if (dlg->Execute())
    {
      Label2->Caption = dlg->FileName;
    }
    else
    {
      cBootable->Checked = false;
    }
  }
}

void __fastcall TfrmSettings::FormClose(TObject *Sender, TCloseAction &Action)
{
  Action = caFree;
}

⌨️ 快捷键说明

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