Componentes.Terceros.DevExp.../official/x.36/ExpressVerticalGrid/Demos/Delphi/EditorsInPlaceDemo/EditorsInPlaceDemoMain.pas
2008-06-02 17:37:37 +00:00

104 lines
3.5 KiB
ObjectPascal

unit EditorsInPlaceDemoMain;
interface
{$I ..\cxVer.inc}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, cxControls, cxLookAndFeels, ActnList, ImgList, Menus, ComCtrls,
StdCtrls, DemoBasicMain, cxContainer, cxEdit, cxTextEdit, cxStyles, cxMaskEdit,
cxCalendar, cxCurrencyEdit, cxMemo, cxInplaceContainer, cxDBLookupComboBox,
cxTimeEdit, cxCalc, cxSpinEdit, cxImageComboBox, cxDropDownEdit, cxEditRepositoryItems,
cxRadioGroup, cxImage, cxBlobEdit, cxCheckBox, cxHyperLinkEdit, cxButtonEdit, cxMRUEdit,
cxGraphics, cxCustomData, cxDataUtils, cxVGrid, cxDBVGrid, cxClasses
{$IFDEF DELPHI6}, Variants{$ENDIF};
type
TEditorsInPlaceDemoMainForm = class(TDemoBasicMainForm)
miShowEditButtons: TMenuItem;
miEditBtnsAlways: TMenuItem;
miEditBtnsFocused: TMenuItem;
miEditBtnsNever: TMenuItem;
N1: TMenuItem;
vgOrders: TcxDBVerticalGrid;
vgOrdersCompany: TcxCategoryRow;
vgOrdersCustomerID: TcxDBEditorRow;
vgOrdersCustomerEmail: TcxDBEditorRow;
vgOrdersPurchaseInfo: TcxCategoryRow;
vgOrdersPaymentType: TcxDBEditorRow;
vgOrdersPaymentAmount: TcxDBEditorRow;
vgOrdersTime: TcxDBEditorRow;
vgOrdersPurchaseDate: TcxDBEditorRow;
vgOrdersQuantity: TcxDBEditorRow;
vgOrdersCar: TcxCategoryRow;
vgOrdersProductID: TcxDBEditorRow;
vgOrdersCarInfo: TcxDBEditorRow;
procedure vgOrdersCompanyEmailPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure miShowEditBtnsClick(Sender: TObject);
procedure actAboutExecute(Sender: TObject);
procedure vgOrdersCarInfoPropertiesGetDisplayText(
Sender: TcxCustomEditorRowProperties; ARecord: Integer;
var AText: String);
procedure vgOrdersCarInfoEditPropertiesInitPopup(Sender: TObject);
procedure vgOrdersCarInfoEditPropertiesCloseUp(Sender: TObject);
private
end;
var
EditorsInPlaceDemoMainForm: TEditorsInPlaceDemoMainForm;
implementation
uses EditorsInPlaceDemoData, ShellAPI, EditorsInPlaceDemoCarInfo;
{$R *.dfm}
procedure TEditorsInPlaceDemoMainForm.vgOrdersCompanyEmailPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
ShellExecute(Handle, PChar('OPEN'), PChar('mailto:' +
VarToStr(vgOrdersCustomerEmail.Properties.Value)),
nil, nil, SW_SHOWMAXIMIZED);
end;
procedure TEditorsInPlaceDemoMainForm.miShowEditBtnsClick(
Sender: TObject);
begin
TMenuItem(Sender).Checked := True;
vgOrders.OptionsView.ShowEditButtons := TcxEditingControlEditShowButtons(TMenuItem(Sender).Tag);
end;
procedure TEditorsInPlaceDemoMainForm.actAboutExecute(Sender: TObject);
begin
ShowAbout(False, True);
end;
procedure TEditorsInPlaceDemoMainForm.vgOrdersCarInfoPropertiesGetDisplayText(
Sender: TcxCustomEditorRowProperties; ARecord: Integer;
var AText: String);
begin
AText := 'Click here';
end;
procedure TEditorsInPlaceDemoMainForm.vgOrdersCarInfoEditPropertiesInitPopup(
Sender: TObject);
var
ACarID: Variant;
begin
EditorsInPlaceDemoCarInfoForm.PopupEdit := TcxPopupEdit(Sender);
ACarID := vgOrdersProductID.Properties.Value;
EditorsInPlaceDemoCarInfoForm.InitPopupPanel(ACarID);
end;
procedure TEditorsInPlaceDemoMainForm.vgOrdersCarInfoEditPropertiesCloseUp(
Sender: TObject);
begin
with EditorsInPlaceDemoCarInfoForm, vgOrders.DataController do
if (vgOrdersProductID.Properties.Value <> EditValue) and Accepted then
vgOrdersProductID.Properties.Value := EditValue;
end;
end.