Componentes.Terceros.DevExp.../internal/x.36/1/ExpressQuantumGrid 6/Demos/Delphi/MasterDetailDemo/MasterDetailDemoMain.pas
2008-09-04 11:31:51 +00:00

170 lines
5.4 KiB
ObjectPascal

unit MasterDetailDemoMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, DB,
DBTables, cxGridLevel, cxControls, cxGridCommon, cxGridCustomView, cxGrid,
cxGridCardView, cxGridDBCardView, StdCtrls, ExtCtrls,
cxDBData, ComCtrls, ToolWin, Menus, cxStyles, ImgList, DBCtrls,
cxDropDownEdit, cxLookupEdit, cxDBLookupComboBox, cxMaskEdit, cxCalendar,
cxDBEdit, cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, cxMemo,
ActnList, cxCheckBox, cxCustomData, cxGraphics, cxFilter, cxData,
cxClasses, cxDataStorage, cxBlobEdit, cxImage, cxLookAndFeels;
type
TMasterDetailDemoMainForm = class(TForm)
mmMain: TMainMenu;
miFile: TMenuItem;
miExit: TMenuItem;
miOptions: TMenuItem;
miAbout: TMenuItem;
miSeparator1: TMenuItem;
lbDescription: TLabel;
StatusBar: TStatusBar;
miTabsPosition: TMenuItem;
miTopTabsPosition: TMenuItem;
miLeftTabsPosition: TMenuItem;
miShowPreviewData: TMenuItem;
tvFilms: TcxGridDBTableView;
lvFilms: TcxGridLevel;
Grid: TcxGrid;
lvPeople: TcxGridLevel;
lvCompanies: TcxGridLevel;
lvPhotos: TcxGridLevel;
cvPeople: TcxGridDBCardView;
tvCompanies: TcxGridDBTableView;
cvPhotos: TcxGridDBCardView;
tvFilmsID: TcxGridDBColumn;
tvFilmsCAPTION: TcxGridDBColumn;
tvFilmsYEAR: TcxGridDBColumn;
tvFilmsTAGLINE: TcxGridDBColumn;
tvFilmsPLOTOUTLINE: TcxGridDBColumn;
tvFilmsRUNTIME: TcxGridDBColumn;
tvFilmsCOLOR: TcxGridDBColumn;
tvFilmsPHOTO: TcxGridDBColumn;
tvFilmsICON: TcxGridDBColumn;
tvFilmsWEBSITE: TcxGridDBColumn;
cvPeopleName: TcxGridDBCardViewRow;
cvPeoplePersonLineID: TcxGridDBCardViewRow;
cvPeopleFIRSTNAME: TcxGridDBCardViewRow;
cvPeopleSECONDNAME: TcxGridDBCardViewRow;
cvPeopleNICKNAME: TcxGridDBCardViewRow;
cvPeopleBIRTHNAME: TcxGridDBCardViewRow;
cvPeopleDATEOFBIRTH: TcxGridDBCardViewRow;
cvPeopleLOCATIONOFBIRTH: TcxGridDBCardViewRow;
cvPeopleBIOGRAPHY: TcxGridDBCardViewRow;
cvPeopleHOMEPAGE: TcxGridDBCardViewRow;
cvPeopleID: TcxGridDBCardViewRow;
cvPeopleFilmID: TcxGridDBCardViewRow;
cvPeopleBIRTHCOUNTRY: TcxGridDBCardViewRow;
cvPeopleGender: TcxGridDBCardViewRow;
tvCompaniesName: TcxGridDBColumn;
tvCompaniesType: TcxGridDBColumn;
tvCompaniesCountry: TcxGridDBColumn;
tvCompaniesWebSite: TcxGridDBColumn;
tvCompaniesID: TcxGridDBColumn;
tvCompaniesFILMID: TcxGridDBColumn;
cvPhotosID: TcxGridDBCardViewRow;
cvPhotosFILMID: TcxGridDBCardViewRow;
cvPhotosSCREEN: TcxGridDBCardViewRow;
cvPhotosICON: TcxGridDBCardViewRow;
cxStyleRepository1: TcxStyleRepository;
GridTableViewStyleSheetDevExpress: TcxGridTableViewStyleSheet;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle3: TcxStyle;
cxStyle4: TcxStyle;
cxStyle5: TcxStyle;
cxStyle6: TcxStyle;
cxStyle7: TcxStyle;
cxStyle8: TcxStyle;
cxStyle9: TcxStyle;
cxStyle10: TcxStyle;
cxStyle11: TcxStyle;
cxStyle12: TcxStyle;
cxStyle13: TcxStyle;
cxStyle14: TcxStyle;
GridCardViewStyleSheetDevExpress: TcxGridCardViewStyleSheet;
cxStyle15: TcxStyle;
cxStyle16: TcxStyle;
cxStyle17: TcxStyle;
cxStyle18: TcxStyle;
cxStyle19: TcxStyle;
cxStyle20: TcxStyle;
cxStyle21: TcxStyle;
cxStyle22: TcxStyle;
cxStyle23: TcxStyle;
cxStyle24: TcxStyle;
LookAndFeelController: TcxLookAndFeelController;
miDetailViewsSynchronization: TMenuItem;
procedure miAboutClick(Sender: TObject);
procedure miExitClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure miTabsPositionClick(Sender: TObject);
procedure miShowPreviewDataClick(Sender: TObject);
procedure miDetailViewsSynchronizationClick(Sender: TObject);
public
{ Public declarations }
end;
var
MasterDetailDemoMainForm: TMasterDetailDemoMainForm;
implementation
{$R *.dfm}
uses
MasterDetailDemoData, AboutDemoForm;
procedure TMasterDetailDemoMainForm.FormShow(Sender: TObject);
begin
if MasterDetailDemoDataDM.tblFilms.Active then
begin
MasterDetailDemoDataDM.tblFilms.First;
if Assigned(tvFilms.Controller.FocusedRecord) then
tvFilms.Controller.FocusedRecord.Expanded := true;
end;
end;
procedure TMasterDetailDemoMainForm.miAboutClick(Sender: TObject);
begin
ShowAboutDemoForm;
end;
procedure TMasterDetailDemoMainForm.miExitClick(Sender: TObject);
begin
Close;
end;
procedure TMasterDetailDemoMainForm.miTabsPositionClick(
Sender: TObject);
begin
(Sender as TMenuItem).Checked := True;
lvFilms.Options.DetailTabsPosition :=
TcxGridDetailTabsPosition((Sender as TMenuItem).MenuIndex + 1);
end;
procedure TMasterDetailDemoMainForm.miShowPreviewDataClick(Sender: TObject);
begin
with Sender as TMenuItem do
Checked := not Checked;
if not Assigned(tvFilms.Preview.Column) then
tvFilms.Preview.Column := tvFilmsPLOTOUTLINE;
tvFilms.Preview.Visible := (Sender as TMenuItem).Checked;
end;
procedure TMasterDetailDemoMainForm.miDetailViewsSynchronizationClick(
Sender: TObject);
var
I: Integer;
begin
TMenuItem(Sender).Checked := not TMenuItem(Sender).Checked;
for I := 0 to Grid.ViewCount - 1 do
Grid.Views[I].Synchronization := TMenuItem(Sender).Checked;
end;
end.