📄 settings_f.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Settings_F.h"
#include "main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "JvExStdCtrls"
#pragma link "JvListBox"
#pragma link "JvExControls"
#pragma link "JvPageList"
#pragma link "JvXPButtons"
#pragma link "JvXPCore"
#pragma link "JvLabel"
#pragma link "JvStaticText"
#pragma link "JvXPCheckCtrls"
#pragma link "JvCombobox"
#pragma link "JvEdit"
#pragma link "JvValidateEdit"
#pragma link "JvExMask"
#pragma link "JvToolEdit"
#pragma link "JvAppIniStorage"
#pragma link "JvAppStorage"
#pragma link "JvComponentBase"
#pragma link "JvFormPlacement"
#pragma resource "*.dfm"
TSettingsForm *SettingsForm;
//---------------------------------------------------------------------------
__fastcall TSettingsForm::TSettingsForm(TComponent* Owner)
: TForm(Owner)
{
JvComboBoxRS232Port->Items=gSettings.RS232Ports;
JvComboBoxSoundCardDevice->Items=gSettings.SoundCardDevs;
JvComboBoxSoundCardDevice->ItemIndex=0;
JvDirectoryEditWebDir->Text=Trim(ExtractFilePath(Application->ExeName));
JvFormStorage1->RestoreFormPlacement();
//QAMForm->FileListBoxApplyPath(JvDirectoryEditWebDir->Text);
//QAMForm->LoadSendingFileNames();
JvListBox1->Items->Text=" General\n Demodulator";
if(JvXPCheckboxModOn->Checked)JvListBox1->Items->Text=" General\n Demodulator\n Modulator General\n Modulator Station ID\n Modulator UDP\n Modulator Unreal Media\n Modulator WebServer";
QAMForm->SettingsFinished();
JvXPCheckboxEnableWebServerClick(this);
QAMForm->ProgramLoaded();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvListBox1Click(TObject *Sender)
{
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" General")
{
GeneralPage->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Demodulator")
{
DemodulatorPage->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Demodulator Advanced")
{
DemodulatorAdvancedPage->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Modulator General")
{
ModulatorGeneralPage->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Modulator Station ID")
{
ModulatorStationID->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Modulator UDP")
{
ModulatorUDP->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Modulator Unreal Media")
{
ModulatorUnrealPage->Show();
return;
}
if(JvListBox1->Items->Strings[JvListBox1->ItemIndex]==" Modulator WebServer")
{
ModulatorWebServer->Show();
return;
}
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::FormShow(TObject *Sender)
{
//QAMForm->FileListBoxApplyPath(JvDirectoryEditWebDir->Text);
//QAMForm->LoadSendingFileNames();
JvXPCheckboxEnableWebServerClick(this);
JvXPCheckboxEnableRS232Click(this);
ClickSet();
JvPageList1->ActivePageIndex=0;
JvListBox1->ItemIndex=0;
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPButtonCancelClick(TObject *Sender)
{
JvFormStorage1->RestoreFormPlacement();
QAMForm->FileListBoxApplyPath(JvDirectoryEditWebDir->Text);
QAMForm->LoadSendingFileNames();
Close();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPButtonOkClick(TObject *Sender)
{
QAMForm->SettingsFinished();
Close();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPCheckboxModOnClick(TObject *Sender)
{
ClickSet();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPCheckboxEnableRS232Click(
TObject *Sender)
{
if(JvXPCheckboxEnableRS232->Checked)GroupBox1->Visible=true;
else GroupBox1->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvDirectoryEditWebDirAfterDialog(
TObject *Sender, AnsiString &AName, bool &AAction)
{
JvDirectoryEditWebDir->Text=AName;
QAMForm->FileListBoxApplyPath(AName);
QAMForm->LoadSendingFileNames();
//JvDirectoryEditWebDir->Text=AName;
//FileListBoxApplyPath(AName);
//AttachFileNames();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::ValueListEditorFilesValidate(
TObject *Sender, int ACol, int ARow, const AnsiString KeyName,
const AnsiString KeyValue)
{
ValueListEditorFiles->Cells[ACol][ARow]=((AnsiString)(abs(KeyValue.ToInt())));
QAMForm->LoadSendingFileNames();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPCheckboxEnableStationIDClick(
TObject *Sender)
{
JvXPCheckboxEnableWebServerClick(this);
ClickSet();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPCheckboxEnableWebServerClick(
TObject *Sender)
{
if(JvXPCheckboxEnableWebServer->Checked)JvXPCheckboxEnableStationID->Checked=true;
ClickSet();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::ClickSet(void)
{
JvListBox1->Items->Text=" General";
if(JvXPCheckboxDeModOn->Checked)
{
JvListBox1->Items->Add(" Demodulator");
JvListBox1->Items->Add(" Demodulator Advanced");
}
if(JvXPCheckboxModOn->Checked)
{
JvListBox1->Items->Add(" Modulator General");
if(JvXPCheckboxEnableStationID->Checked||JvXPCheckboxEnableWebServer->Checked)JvListBox1->Items->Add(" Modulator Station ID");
JvListBox1->Items->Add(" Modulator UDP");
if(JvXPCheckboxEnableUnRealStreaming->Checked)JvListBox1->Items->Add(" Modulator Unreal Media");
if(JvXPCheckboxEnableWebServer->Checked)JvListBox1->Items->Add(" Modulator WebServer");
}
}
void __fastcall TSettingsForm::JvXPCheckboxDeModOnClick(TObject *Sender)
{
ClickSet();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPCheckboxEnableUnRealStreamingClick(
TObject *Sender)
{
ClickSet();
}
//---------------------------------------------------------------------------
void __fastcall TSettingsForm::JvXPButton1Click(TObject *Sender)
{
JvXPCheckboxAllwaysRunFFT->Checked=true;
JvValidateEditQAM16CMAThreshold->Value=450;
JvValidateEditQAM16AMAThreshold->Value=280;
JvValidateEditQAM64CMAThreshold->Value=100;
JvValidateEditQAM64AMAThreshold->Value=50;
JvValidateEditCMATimeOut->Value=50000;
JvValidateEditAMATimeOut->Value=100000;
JvValidateEditEqualizerStepSize->Value=0.0005;
JvComboBoxFIRSize->ItemIndex=0;
JvValidateEditNumberOfSettingsToTry->Value=3;
JvValidateEditPreSymbolCnt->Value=15000;
JvValidateEditLockingSymbolCnt->Value=80000;
JvValidateEditPostSymbolCnt->Value=5000;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -