Componentes.Terceros.DevExp.../internal/x.36/1/ExpressQuantumGrid 6/Demos/CBuilder/SummaryGroupDemo/SummaryGroupDemoMain.cpp

135 lines
4.8 KiB
C++
Raw Normal View History

//---------------------------------------------------------------------------
#include <vcl.h>
#include "shellapi.hpp"
#pragma hdrstop
#include "SummaryGroupDemoMain.h"
#include "SummaryGroupDemoData.h"
#include "AboutDemoForm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "cxClasses"
#pragma link "cxControls"
#pragma link "cxCustomData"
#pragma link "cxData"
#pragma link "cxDBData"
#pragma link "cxEdit"
#pragma link "cxFilter"
#pragma link "cxGraphics"
#pragma link "cxGrid"
#pragma link "cxGridCustomTableView"
#pragma link "cxGridCustomView"
#pragma link "cxGridDBTableView"
#pragma link "cxGridLevel"
#pragma link "cxGridTableView"
#pragma link "cxStyles"
#pragma link "cxGridCustomPopupMenu"
#pragma link "cxGridPopupMenu"
#pragma link "cxLookAndFeels"
#pragma link "cxBlobEdit"
#pragma link "cxCalc"
#pragma link "cxCalendar"
#pragma link "cxDataStorage"
#pragma link "cxDBLookupComboBox"
#pragma link "cxImageComboBox"
#pragma link "cxSpinEdit"
#pragma resource "*.dfm"
TSummaryGroupDemoMainForm *SummaryGroupDemoMainForm;
//---------------------------------------------------------------------------
__fastcall TSummaryGroupDemoMainForm::TSummaryGroupDemoMainForm(TComponent* Owner)
: TForm(Owner)
{
UpdateMenu();
}
//---------------------------------------------------------------------------
void TSummaryGroupDemoMainForm::UpdateMenu()
{
miSelectedRecordsOnly->Checked = tvOrders->DataController->Summary->Options.Contains(soSelectedRecords);
miIgnoreNullValues->Checked = tvOrders->DataController->Summary->Options.Contains(soNullIgnore);
miGroupSummaryLayout->Items[(int)tvOrders->OptionsView->GroupSummaryLayout]->Checked = true;
miGroupFooter->Items[(int)tvOrders->OptionsView->GroupFooters]->Checked = true;
miGroupFootersAtCarLevel->Checked = tvOrdersProductID->Options->GroupFooters;
miGroupFootersAtCompanyLevel->Checked = tvOrdersCustomerID->Options->GroupFooters;
miMultiSelect->Checked = tvOrders->OptionsSelection->MultiSelect;
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miAboutClick(TObject *Sender)
{
ShowAboutDemoForm();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::FormShow(TObject *Sender)
{
tvOrders->DataController->Groups->FullExpand();
tvOrders->Controller->GoToFirst(true);
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miSelectedRecordsOnlyClick(TObject *Sender)
{
TcxSummaryOptions AOptions = tvOrders->DataController->Summary->Options;
if (AOptions.Contains(soSelectedRecords))
AOptions >> soSelectedRecords;
else
AOptions << soSelectedRecords;
tvOrders->DataController->Summary->Options = AOptions;
UpdateMenu();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miIgnoreNullValuesClick(TObject *Sender)
{
TcxSummaryOptions AOptions = tvOrders->DataController->Summary->Options;
if (AOptions.Contains(soNullIgnore))
AOptions >> soNullIgnore;
else
AOptions << soNullIgnore;
tvOrders->DataController->Summary->Options = AOptions;
UpdateMenu();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miMultiSelectClick(TObject *Sender)
{
tvOrders->OptionsSelection->MultiSelect = !tvOrders->OptionsSelection->MultiSelect;
UpdateMenu();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miGroupFootersClick(TObject *Sender)
{
tvOrders->OptionsView->GroupFooters = (TcxGridGroupFootersMode)((TMenuItem*)Sender)->MenuIndex;
UpdateMenu();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miGroupSummaryLayoutClick(TObject *Sender)
{
tvOrders->OptionsView->GroupSummaryLayout = (TcxGridGroupSummaryLayout)((TMenuItem*)Sender)->MenuIndex;
UpdateMenu();
}
//---------------------------------------------------------------------------
void __fastcall TSummaryGroupDemoMainForm::miGroupFootersAtLevelClick(TObject *Sender)
{
TcxGridColumn* AColumn;
if (((TMenuItem*)Sender)->Tag == 1)
AColumn = tvOrdersProductID;
else
AColumn = tvOrdersCustomerID;
AColumn->Options->GroupFooters = !AColumn->Options->GroupFooters;
UpdateMenu();
}
//---------------------------------------------------------------------------