Exemple #1
0
/*===========================================================================
 *
 * Class CSrLvlEditDlg Event - BOOL OnInitDialog ();
 *
 *=========================================================================*/
BOOL CSrLvlEditDlg::OnInitDialog()
{
    CDialog::OnInitDialog();

    assert(m_pRecordHandler != NULL);
    m_UpdateListOnChange = false;

    SetWindowText(m_TitleValue);

    FillFilterList();

    /* Initialize the record list */
    m_RecordList.SetListName("LvlEditList");
    m_RecordList.DefaultSettings();
    AddListColumns();
    FillRecordList();
    m_RecordList.SortList(SR_FIELD_EDITORID);

    m_Count.SetLimitText(8);
    m_Level.SetLimitText(8);
    m_ObjectID.SetLimitText(128);
    m_Faction.SetLimitText(128);
    m_Condition.SetLimitText(10);
    m_MinRank.SetLimitText(10);

    SetControlData();

    m_UpdateListOnChange = true;
    return (TRUE);
}
//---------------------------------------------------------------------------
__fastcall TfrmRecordFilter::TfrmRecordFilter(TComponent* Owner,TList * AFilterList,int ABillRecordLength)
  : TForm(Owner)
{
  FilterList = AFilterList;
  for(int n = 0;n < FilterList->Count;n++)
  {
    FillFilterList(NULL,(RecordFilter *)FilterList->Items[n]);
  }
  BillRecordLength = ABillRecordLength;
  Changed = false;
}
/*===========================================================================
 *
 * Class CSrSelectRecordDlg Event - BOOL OnInitDialog ();
 *
 *=========================================================================*/
BOOL CSrSelectRecordDlg::OnInitDialog() {
    CDialog::OnInitDialog();

    m_UpdateListOnChange = false;
    SetWindowText(m_DlgInfo.pTitle);
    m_ClearButton.ShowWindow(m_AllowNullRecord ? SW_SHOW : SW_HIDE);

    if (m_pRecordHandler != NULL)
    {
        if (!m_InitialEditorID.IsEmpty())
        {
            m_pPrevRecord = m_pRecordHandler->FindEditorID(m_InitialEditorID);
        }
        else
        {
            m_pPrevRecord = m_pRecordHandler->FindFormID(m_InitialFormID);
        }

        m_pCurrentRecord = m_pPrevRecord;
    }

    if (m_pCurrentRecord != NULL)
    {
        m_CurrentTypeFilter = m_pCurrentRecord->GetRecordType();
    }
    else if (m_DlgInfo.ppRecordArray != NULL)
    {
        m_CurrentTypeFilter = *m_DlgInfo.ppRecordArray[0];
    }
    else if (m_DlgInfo.pRecordType != NULL)
    {
        m_CurrentTypeFilter = *m_DlgInfo.pRecordType;
    }

    bool ShowFilter = m_DlgInfo.ppRecordArray != NULL;
    m_TypeFilterLabel.ShowWindow(ShowFilter);
    m_TypeFilterList.ShowWindow(ShowFilter);
    if (ShowFilter) FillFilterList();

    /* Initialize the record list */
    m_RecordList.SetListName("SelectRecordList");
    m_RecordList.DefaultSettings();
    AddListColumns();
    FillRecordList();

    SetControlData();
    m_RecordList.SetFocus();

    m_IsInitialized      = true;
    m_UpdateListOnChange = true;

    return (false);
}
void __fastcall TfrmRecordFilter::menuAddNewClick(TObject *Sender)
{
  TfrmEditFilter * frmEditFilter = new TfrmEditFilter(this,NULL,BillRecordLength);
  if(frmEditFilter->ShowModal() == mrOk)
  {
    RecordFilter rf = {0};
    rf.Pos    = StrToInt(frmEditFilter->txtPos->Text);
    rf.Width  = StrToInt(frmEditFilter->txtWidth->Text);
    rf.Is     = StrToInt(frmEditFilter->txtIs->Text);
    rf.Action = (int)(frmEditFilter->cbxAction->Items->Objects[frmEditFilter->cbxAction->ItemIndex]);
    rf.Length = StrToInt(frmEditFilter->txtLength->Text);
    strncpy(&rf.Cause[0],frmEditFilter->cbxCause->Text.c_str(),100);
    FillFilterList(NULL,&rf);
    Changed = true;
  }
  delete frmEditFilter;
}
Exemple #5
0
//---------------------------------------------------------------------------
void __fastcall TForm_Main::FormCreate(TObject *Sender)
{
	if (!InitMiles())
	{
		ShowMessage("Error initializing Miles");
		Close();
		return;
	}

	FillFilterList();

	// Open a file off the command line
	if (ParamCount() > 0)
	{
		c_Edit_FileName->Text = ParamStr(1);
		OpenFile();
	}
}
void __fastcall TfrmRecordFilter::lvFiltersDblClick(TObject *Sender)
{
  TListItem * Item = lvFilters->Selected;
  if(Item == NULL)
    return;
  RecordFilter rf = {0};
  rf.Pos    = StrToInt(Item->SubItems->Strings[0]);
  rf.Width  = StrToInt(Item->SubItems->Strings[1]);
  rf.Is     = StrToInt(Item->SubItems->Strings[2]);
  if(Item->SubItems->Strings[3] == "跳过该记录")
    rf.Action = RECORD_FILTER_SKIP;
  rf.Length = StrToInt(Item->SubItems->Strings[4]);
  strncpy(&rf.Cause[0],Item->SubItems->Strings[5].c_str(),100);
  TfrmEditFilter * frmEditFilter = new TfrmEditFilter(this,&rf,BillRecordLength);
  if(frmEditFilter->ShowModal() == mrOk)
  {
    FillFilterList(Item,&rf);
    Changed = true;
  }
  delete frmEditFilter;
}