123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- unit OtherMeasureFme;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, JimPages, XPMenu, ComCtrls, ToolWin, ExtCtrls, sdGridDBA, ZJGrid,
- ProjectData;
- type
- TOtherMeasureFrame = class(TFrame)
- pnlRelaXmjType: TPanel;
- tbToolsButton: TToolBar;
- tobtnPhase: TToolButton;
- tobtnOnce: TToolButton;
- xpm: TXPMenu;
- pnlOtherMeasure: TPanel;
- jpsOtherMeasure: TJimPages;
- jpsOtherMeasurePhase: TJimPage;
- jpsOtherMeasureOnce: TJimPage;
- zgPhase: TZJGrid;
- zgOnce: TZJGrid;
- saOnce: TsdGridDBA;
- saPhase: TsdGridDBA;
- procedure tobtnPhaseClick(Sender: TObject);
- procedure zgPhaseKeyDown(Sender: TObject; var Key: Word;
- Shift: TShiftState);
- procedure zgPhaseCellGetColor(Sender: TObject; ACoord: TPoint;
- var AColor: TColor);
- private
- FProjectData: TProjectData;
- { Private declarations }
- public
- constructor Create(AProjectData: TProjectData);
- destructor Destroy; override;
- procedure ResetViewControl;
- end;
- implementation
- uses
- OtherMeasurePhaseDm, sdDB;
- {$R *.dfm}
- constructor TOtherMeasureFrame.Create(AProjectData: TProjectData);
- begin
- inherited Create(nil);
- FProjectData := AProjectData;
- saPhase.DataView := FProjectData.OtherMeasurePhaseData.sdvPhase;
- saOnce.DataView := FProjectData.OtherMeasureOnceData.sdvOnce;
- end;
- destructor TOtherMeasureFrame.Destroy;
- begin
- inherited;
- end;
- procedure TOtherMeasureFrame.ResetViewControl;
- begin
- saPhase.Columns.ColumnByName('CurTotalPrice').ReadOnly := TProjectData(FProjectData).StageDataReadOnly;
- if TProjectData(FProjectData).AllowInsert then
- saPhase.Options := [aoAllowInsert, aoAllowEdit, aoAllowDelete, aoAutoInsert, aoAllowUpMove, aoAllowDownMove]
- else
- saPhase.Options := [];
- end;
- procedure TOtherMeasureFrame.tobtnPhaseClick(Sender: TObject);
- begin
- jpsOtherMeasure.ActivePageIndex := TToolButton(Sender).Tag;
- tobtnPhase.Down := tobtnPhase.Tag = TToolButton(Sender).Tag;
- tobtnOnce.Down := tobtnOnce.Tag = TToolButton(Sender).Tag;
- end;
- procedure TOtherMeasureFrame.zgPhaseKeyDown(Sender: TObject; var Key: Word;
- Shift: TShiftState);
- begin
- if (ssCtrl in Shift) and (ssShift in Shift) and (ssAlt in Shift)
- and (Key in [68, 100]) then // 'd', 'D'
- begin
- with FProjectData.OtherMeasurePhaseData do
- FilterDeletedRec := not FilterDeletedRec;
- end;
- end;
- procedure TOtherMeasureFrame.zgPhaseCellGetColor(Sender: TObject;
- ACoord: TPoint; var AColor: TColor);
- var
- Rec: TsdDataRecord;
- begin
- Rec := saPhase.DataView.Records[ACoord.Y-1];
- if Assigned(Rec) and Rec.ValueByName('Deleted').AsBoolean then
- AColor := $00D5D5D5
- else
- AColor := clWindow;
- end;
- end.
|