Componentes.Terceros.DevExp.../official/x.19/ExpressQuantumGrid 5/Demos/CBuilder/ConvertGrid3MasterDetailDemo/ConvertGrid3MasterDetailDemoMain.cpp
2007-09-09 11:27:22 +00:00

117 lines
4.5 KiB
C++

//---------------------------------------------------------------------------
#include <vcl.h>
#include "shellapi.hpp"
#pragma hdrstop
#include "ConvertGrid3MasterDetailDemoMain.h"
#include "ConvertGrid3MasterDetailDemoData.h"
#include "AboutDemoForm.h"
#include "ConvertGrid3MasterDetailDemoGrids.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 "cxLookAndFeels"
#pragma resource "*.dfm"
TConvertGrid3MasterDetailDemoMainForm *ConvertGrid3MasterDetailDemoMainForm;
//---------------------------------------------------------------------------
__fastcall TConvertGrid3MasterDetailDemoMainForm::TConvertGrid3MasterDetailDemoMainForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TConvertGrid3MasterDetailDemoMainForm::miAboutClick(TObject *Sender)
{
ShowAboutDemoForm();
}
//---------------------------------------------------------------------------
void __fastcall TConvertGrid3MasterDetailDemoMainForm::miExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TConvertGrid3MasterDetailDemoMainForm::FormShow(TObject *Sender)
{
miMasterDetailStyleClick(miGrid3MasterDetailStyle);
}
//---------------------------------------------------------------------------
void __fastcall TConvertGrid3MasterDetailDemoMainForm::miMasterDetailStyleClick(TObject *Sender)
{
((TMenuItem*)Sender)->Checked = true;
switch (((TMenuItem*)Sender)->Tag) {
case 0:
SetGrid4MasterDetailStyle();
break;
case 1:
SetGrid3MasterDetailStyle();
break;
}
}
//---------------------------------------------------------------------------
void __fastcall TConvertGrid3MasterDetailDemoMainForm::FormCloseQuery(TObject *Sender, bool &CanClose)
{
SetGrid3MasterDetailStyle();
}
//---------------------------------------------------------------------------
void TConvertGrid3MasterDetailDemoMainForm::SetGrid3MasterDetailStyle() // Standard two grid style
{
// Display in Grid single grid style
ConvertGrid3MasterDetailDemoGridsForm->cxGrid1DBBandedTableView1->DataController->DataSource = NULL;
ConvertGrid3MasterDetailDemoGridsForm->cxGrid1DBTableView1->DataController->DataSource = NULL;
// remove master/detail link in the data module
ConvertGrid3MasterDetailDemoDataDM->tblOrders->MasterSource =
ConvertGrid3MasterDetailDemoDataDM->dsCars;
ConvertGrid3MasterDetailDemoGridsForm->dxDBGridCars->DataSource =
ConvertGrid3MasterDetailDemoDataDM->dsCars;
ConvertGrid3MasterDetailDemoGridsForm->dxDBGridOrders->DataSource =
ConvertGrid3MasterDetailDemoDataDM->dsOrders;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid3Mode->Parent = pnlGrids;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid3Mode->Visible = true;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid4Mode->Parent =
ConvertGrid3MasterDetailDemoGridsForm->pcGrids;
}
//---------------------------------------------------------------------------
void TConvertGrid3MasterDetailDemoMainForm::SetGrid4MasterDetailStyle() // Grid4 single grid style
{
// Display in standard two grid style
ConvertGrid3MasterDetailDemoGridsForm->dxDBGridCars->DataSource = NULL;
ConvertGrid3MasterDetailDemoGridsForm->dxDBGridOrders->DataSource = NULL;
ConvertGrid3MasterDetailDemoGridsForm->cxGrid1DBBandedTableView1->DataController->DataSource =
ConvertGrid3MasterDetailDemoDataDM->dsCars;
ConvertGrid3MasterDetailDemoGridsForm->cxGrid1DBTableView1->DataController->DataSource =
ConvertGrid3MasterDetailDemoDataDM->dsOrders;
// restore master/detail link in the data module
ConvertGrid3MasterDetailDemoDataDM->tblOrders->MasterSource = NULL;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid4Mode->Parent = pnlGrids;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid4Mode->Visible = true;
ConvertGrid3MasterDetailDemoGridsForm->tsGrid3Mode->Parent =
ConvertGrid3MasterDetailDemoGridsForm->pcGrids;
}
//---------------------------------------------------------------------------