git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.DevExpressVCL@8 05c56307-c608-d34a-929d-697000501d7a
151 lines
4.7 KiB
ObjectPascal
151 lines
4.7 KiB
ObjectPascal
unit ColumnsMultiEditorsDemoMain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Dialogs,
|
|
Forms, cxControls, cxGridCustomTableView, cxGridTableView, cxGridCustomView,
|
|
cxLookAndFeels, cxData, cxDBData, cxClasses, cxEditRepositoryItems,
|
|
cxDataStorage, StdCtrls, cxEdit, ActnList, ImgList, Menus, ComCtrls,
|
|
cxGridLevel, cxStyles, cxGraphics, cxCustomData, cxGrid, cxFilter;
|
|
|
|
type
|
|
TColumnsMultiEditorsDemoMainForm = class(TForm)
|
|
mmMain: TMainMenu;
|
|
miAbout: TMenuItem;
|
|
miFile: TMenuItem;
|
|
miOptions: TMenuItem;
|
|
miExit: TMenuItem;
|
|
sbMain: TStatusBar;
|
|
lbDescrip: TLabel;
|
|
EditRepository: TcxEditRepository;
|
|
ImageComboLanguages: TcxEditRepositoryImageComboBoxItem;
|
|
ImageComboCommunication: TcxEditRepositoryImageComboBoxItem;
|
|
SpinItemYears: TcxEditRepositorySpinItem;
|
|
DateItemStartWorkFrom: TcxEditRepositoryDateItem;
|
|
Grid: TcxGrid;
|
|
tvSkills: TcxGridTableView;
|
|
clnName: TcxGridColumn;
|
|
clnSkill: TcxGridColumn;
|
|
clnGrade: TcxGridColumn;
|
|
lvSkills: TcxGridLevel;
|
|
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;
|
|
miEditButtons: TMenuItem;
|
|
miEditButtonsNever: TMenuItem;
|
|
miEditButtonsForFocusedRecord: TMenuItem;
|
|
miEditButtonsAlways: TMenuItem;
|
|
LookAndFeelController: TcxLookAndFeelController;
|
|
procedure miAboutClick(Sender: TObject);
|
|
procedure miExitClick(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure FormDestroy(Sender: TObject);
|
|
procedure clnGradeGetProperties(Sender: TcxCustomGridTableItem;
|
|
ARecord: TcxCustomGridRecord;
|
|
var AProperties: TcxCustomEditProperties);
|
|
procedure miEditButtonsAlwaysClick(Sender: TObject);
|
|
procedure miEditButtonsFocusedRecordClick(Sender: TObject);
|
|
procedure miEditButtonsNeverClick(Sender: TObject);
|
|
private
|
|
end;
|
|
|
|
var
|
|
ColumnsMultiEditorsDemoMainForm: TColumnsMultiEditorsDemoMainForm;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses
|
|
AboutDemoForm, ColumnsMultiEditorsDemoDS;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.miAboutClick(Sender: TObject);
|
|
begin
|
|
ShowAboutDemoForm;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.miExitClick(Sender: TObject);
|
|
begin
|
|
Close;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.FormCreate(Sender: TObject);
|
|
begin
|
|
tvSkills.BeginUpdate;
|
|
try
|
|
clnSkill.DataBinding.ValueTypeClass := TcxStringValueType;
|
|
clnGrade.DataBinding.ValueTypeClass := TcxVariantValueType;
|
|
clnName.DataBinding.ValueTypeClass := TcxStringValueType;
|
|
finally
|
|
tvSkills.EndUpdate;
|
|
end;
|
|
tvSkills.DataController.CustomDataSource := TSkillDataSource.Create(tvSkills,
|
|
ImageComboLanguages.Properties.Items.Count,
|
|
ImageComboCommunication.Properties.Items.Count);
|
|
tvSkills.DataController.CustomDataSource.DataChanged;
|
|
tvSkills.DataController.Groups.FullExpand;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.FormDestroy(Sender: TObject);
|
|
begin
|
|
tvSkills.DataController.CustomDataSource.Free;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.clnGradeGetProperties(
|
|
Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
|
|
var AProperties: TcxCustomEditProperties);
|
|
begin
|
|
case ARecord.RecordIndex mod SkillCount of
|
|
0: AProperties := SpinItemYears.Properties;
|
|
1, 2: AProperties := ImageComboLanguages.Properties;
|
|
3: AProperties := ImageComboCommunication.Properties;
|
|
4: AProperties := DateItemStartWorkFrom.Properties;
|
|
end;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.miEditButtonsAlwaysClick(
|
|
Sender: TObject);
|
|
begin
|
|
if tvSkills.OptionsView.ShowEditButtons <> gsebAlways then
|
|
begin
|
|
TMenuItem(Sender).Checked := True;
|
|
tvSkills.OptionsView.ShowEditButtons := gsebAlways;
|
|
end;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.miEditButtonsFocusedRecordClick(
|
|
Sender: TObject);
|
|
begin
|
|
if tvSkills.OptionsView.ShowEditButtons <> gsebForFocusedRecord then
|
|
begin
|
|
TMenuItem(Sender).Checked := True;
|
|
tvSkills.OptionsView.ShowEditButtons := gsebForFocusedRecord;
|
|
end;
|
|
end;
|
|
|
|
procedure TColumnsMultiEditorsDemoMainForm.miEditButtonsNeverClick(
|
|
Sender: TObject);
|
|
begin
|
|
if tvSkills.OptionsView.ShowEditButtons <> gsebNever then
|
|
begin
|
|
TMenuItem(Sender).Checked := True;
|
|
tvSkills.OptionsView.ShowEditButtons := gsebNever;
|
|
end;
|
|
end;
|
|
|
|
end.
|