📄 main.pas
字号:
EditorRelationForm.BringToFront;
//Set Focus because ToolWindows don't seem to be focused automatically
try
if(EditorRelationForm.CanFocus)then
EditorRelationForm.SetFocus;
except
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_EditRegion)then
begin
EditorRegionForm:=TEditorRegionForm.Create(self);
EditorRegionForm.SetRegion(QCustomEvent_data(QCustomEventH(Event)));
EditorRegionForm.Show;
EditorRegionForm.BringToFront;
//Set Focus because ToolWindows don't seem to be focused automatically
try
if(EditorRegionForm.CanFocus)then
EditorRegionForm.SetFocus;
except
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_EditNote)then
begin
EditorNoteForm:=TEditorNoteForm.Create(Application.MainForm);
EditorNoteForm.SetNote(QCustomEvent_data(QCustomEventH(Event)));
EditorNoteForm.Show;
EditorNoteForm.BringToFront;
//Set Focus because ToolWindows don't seem to be focused automatically
try
if(EditorNoteForm.CanFocus)then
EditorNoteForm.SetFocus;
except
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_EditImage)then
begin
EditorImageForm:=TEditorImageForm.Create(Application.MainForm);
EditorImageForm.SetImage(QCustomEvent_data(QCustomEventH(Event)));
EditorImageForm.Show;
EditorImageForm.BringToFront;
//Set Focus because ToolWindows don't seem to be focused automatically
try
if(EditorImageForm.CanFocus)then
EditorImageForm.SetFocus;
except
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_SetWorkTool)then
begin
Pint:=QCustomEvent_data(QCustomEventH(Event));
DisplaySelectedWorkTool(Pint^);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshPalettes)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
PaletteModelFrom.RefreshTablesTreeView(TEERForm(ActiveMDIChild).EERModel);
PaletteDataTypesForm.DisplayDataTypes(TEERForm(ActiveMDIChild).EERModel);
PaletteNavForm.SetModelImg(TEERForm(ActiveMDIChild).EERModel);
TEditorQueryForm(DockedEditorQueryForm).RefreshStoredSQLTreeView(TEERForm(ActiveMDIChild).EERModel);
TEditorQueryForm(DockedEditorQueryForm).RefreshTempSQLStoreBtns(TEERForm(ActiveMDIChild).EERModel);
SnapToGridBtn.Down:=TEERForm(ActiveMDIChild).EERModel.UsePositionGrid;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RedrawTableList)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
PaletteModelFrom.TablesTreeView.Repaint;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshNavPalette)then
begin
if(QCustomEvent_data(QCustomEventH(Event))<>nil)then
PaletteNavForm.SetModelImg(TEERModel(QCustomEvent_data(QCustomEventH(Event))))
else if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
PaletteNavForm.SetModelImg(TEERForm(ActiveMDIChild).EERModel);
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshGridBtn)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
SnapToGridBtn.Down:=TEERForm(ActiveMDIChild).EERModel.UsePositionGrid;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_ClearNavImg)then
begin
PaletteNavForm.SetModelImg(nil);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshInfoPalette)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
PaletteNavForm.RefreshInfo(TEERForm(ActiveMDIChild).EERModel);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_UpdateStatusBar)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
ZoomLbl.Caption:=
FormatFloat('###0.##', TEERForm(ActiveMDIChild).EERModel.GetZoomFac)+' %';
PaletteNavForm.RefreshZoomSettings;
end
else
MainForm.ZoomLbl.Caption:='';
Result:=True;
end;
if(QEvent_type(Event)=QEventType_SetStatusCaption)then
begin
theStr:=QCustomEvent_data(QCustomEventH(Event));
DMGUI.SetStatusCaption(theStr);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_SetSaveImgs)then
begin
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
if(TEERForm(ActiveMDIChild).EERModel.IsChanged)then
EnableSaveImgs
else
DisableSaveImgs;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshDataTypesPalette)then
begin
if(Assigned(PaletteDataTypesForm))then
PaletteDataTypesForm.DisplayDataTypes(QCustomEvent_data(QCustomEventH(Event)));
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RefreshModelPalette)then
begin
if(Assigned(PaletteModelFrom))then
PaletteModelFrom.RefreshTablesTreeView(QCustomEvent_data(QCustomEventH(Event)));
//Clear StoredSQLTree when model is closed
TEditorQueryForm(DockedEditorQueryForm).RefreshStoredSQLTreeView(QCustomEvent_data(QCustomEventH(Event)));
TEditorQueryForm(DockedEditorQueryForm).RefreshTempSQLStoreBtns(QCustomEvent_data(QCustomEventH(Event)));
Result:=True;
end;
if(QEvent_type(Event)=QEventType_EnableMainFormRefreshTmr)then
begin
RefreshTmr.Enabled:=True;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_RemoveChildFormsMenuItem)then
begin
pos:=WindowsMI.IndexOf(QCustomEvent_data(QCustomEventH(Event)));
WindowsMI.Delete(pos);
TMenuItem(QCustomEvent_data(QCustomEventH(Event))).Free;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_SetQueryStatusLbl)then
begin
DMGUI.SetQueryStatusLbl;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_CloseAllClientDatasets)then
begin
//Close Datasets in DockedEditorQueryForm
if(TEditorQueryForm(DockedEditorQueryForm).OutputQry.Active)then
TEditorQueryForm(DockedEditorQueryForm).OutputQry.Close;
if(TEditorQueryForm(DockedEditorQueryForm).OutputClientDataSet.Active)then
begin
TEditorQueryForm(DockedEditorQueryForm).OutputClientDataSet.Close;
TEditorQueryForm(DockedEditorQueryForm).DBGrid.Columns.Clear;
TEditorQueryForm(DockedEditorQueryForm).DBMemo.DataField:='';
TEditorQueryForm(DockedEditorQueryForm).DBImage.DataField:='';
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_AddToRecentFileList)then
begin
theStr:=QCustomEvent_data(QCustomEventH(Event));
DMGUI.AddFileToRecentFilesList(theStr);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_StartEERObjectDrag)then
begin
if(TObject(QCustomEvent_data(QCustomEventH(Event))).ClassNameIs('TEERTable'))then
begin
//EditorQueryDragTargetForm:=TEditorQueryDragTargetForm.Create(self);
//TEditorQueryDragTargetForm(EditorQueryDragTargetForm).SetModel(TEERModel(TEERTable(QCustomEvent_data(QCustomEventH(Event))).Parent), DMEER.ActiveSQLColumnDragPositions);
EditorQueryDragTargetForm.Show;
DMEER.IsDragging:=True;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_EndEERObjectDrag)then
begin
if(TObject(QCustomEvent_data(QCustomEventH(Event))).ClassNameIs('TEERTable'))then
begin
if(Assigned(EditorQueryDragTargetForm))then
EditorQueryDragTargetForm.Hide;//.Free;
DMEER.IsDragging:=False;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_SelectSQLColumnFromTable)then
begin
Pint:=QCustomEvent_data(QCustomEventH(Event));
CopyMouseOverObjToSQLMemo(Pint^);
Result:=True;
end;
if(QEvent_type(Event)=QEventType_ModelNameChanged)then
begin
//Catch exception in plugins
try
if(TEERModel(QCustomEvent_data(QCustomEventH(Event))).Parent.ClassNameIs('TEERForm'))then
begin
//Set MenuItem caption
if(TEERForm(TEERModel(QCustomEvent_data(QCustomEventH(Event))).Parent).theFormMenuItem<>nil)then
begin
TEERForm(TEERModel(QCustomEvent_data(QCustomEventH(Event))).Parent).theFormMenuItem.Caption:=
TEERModel(QCustomEvent_data(QCustomEventH(Event))).GetModelName;
end;
TEERForm(TEERModel(QCustomEvent_data(QCustomEventH(Event))).Parent).Caption:=
DMMain.GetTranslatedMessage('DB Model', 18)+' | '+
TEERModel(QCustomEvent_data(QCustomEventH(Event))).GetModelName;
end;
except
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_DeleteObject)then
begin
if(TObject(QCustomEvent_data(QCustomEventH(Event))).ClassParent = TEERObj)then
begin
theModel:=TEERObj(QCustomEvent_data(QCustomEventH(Event))).ParentEERModel;
theEERObj:=TEERObj(QCustomEvent_data(QCustomEventH(Event)));
theModel.StartSubActionLog(at_DeleteObj);
theModel.LogActions:=True;
try
theEERObj.DeleteObj;
finally
theModel.LogActions:=False;
theModel.EndSubAction;
end;
end;
Result:=True;
end;
if(QEvent_type(Event)=QEventType_PlaceModelFromFile)or
(QEvent_type(Event)=QEventType_PlaceModelFromDB)or
(QEvent_type(Event)=QEventType_PlaceModelFromLibrary)then
begin
Ppoint:=QCustomEvent_data(QCustomEventH(Event));
if(ActiveMDIChild<>nil)then
if(ActiveMDIChild.Classname='TEERForm')then
begin
if(QEvent_type(Event)=QEventType_PlaceModelFromFile)then
PlaceModel(TEERForm(ActiveMDIChild).EERModel, Ppoint^, PlaceFromFile)
else if(QEvent_type(Event)=QEventType_PlaceModelFromDB)then
PlaceModel(TEERForm(ActiveMDIChild).EERModel, Ppoint^, PlaceFromDB)
else if(QEvent_type(Event)=QEventType_PlaceModelFromLibrary)then
PlaceModel(TEERForm(ActiveMDIChild).EERModel, Ppoint^, PlaceFromLibrary);
end;
Result:=True;
end;
//if this was called by another message, call default function
if(Result=False)then
EventFilter:=inherited EventFilter(Sender, Event);
end;
procedure TMainForm.SetApplStyle(ApplStyle: integer);
begin
{$IFNDEF USE_QTheming}
case ApplStyle of
1: StyleStandardMIClick(StyleStandardMI);
2: StyleStandardMIClick(StyleMotifMI);
3: StyleStandardMIClick(StyleSGIMI);
4: StyleStandardMIClick(StylePlatinumMI);
end;
{$ENDIF}
end;
procedure TMainForm.SetWorkMode(theWorkMode: integer);
begin
DMEER.WorkMode:=theWorkMode;
DMEER.SetWorkTool(wtPointer);
if(theWorkMode=wmQuery)then
begin
MainForm.QueryImg.Show;
MainForm.QueryImg.BringToFront;
MainForm.Designimg.Hide;
DesignToolsPnl.Hide;
QueryToolsPnl.Show;
QueryToolsPnl.Top:=1;
PaletteToolsForm.QueryImg.BringToFront;
if(Not(DMGUI.ShowPalettesDocked))then
begin
if(PaletteDataTypesForm.Visible)then
begin
MainForm.DatatypesMIClick(self);
if(PaletteModelFrom.Top>PaletteDataTypesForm.Top+
PaletteDataTypesForm.Height-30)then
PaletteModelFrom.Top:=PaletteDataTypesForm.Top;
end;
end
else
begin
DatatypesPnl.Visible:=False;
end;
//QueryPnl.Height:=226;
QueryPnl.Show;
QuerySplitter.Show;
if(DMDB.OutputQry.Active)then
DMDB.OutputQry.Close;
if(DMDB.OutputClientDataSet.Active)then
DMDB.OutputClientDataSet.Close;
end
else if(theWorkMode=wmDesign)then
begin
MainForm.Designimg.Show;
MainForm.Designimg.BringToFront;
MainForm.QueryImg.Hide;
PaletteToolsForm.Designimg.BringToFront;
DesignToolsPnl.Show;
DesignToolsPnl.Top:=1;
QueryToolsPnl.Hide;
MainForm.QueryPnl.Hide;
MainForm.QuerySplitter.Hide;
if(Not(DMGUI.ShowPalettesDocked))then
begin
if(Not(PaletteDataTypesForm.Visible))and
(TabHidePalettes.Count=0)then
begin
MainForm.DatatypesMIClick(self);
if(PaletteModelFrom.Top=PaletteDataTypesForm.Top)then
PaletteModelFrom.Top:=PaletteDataTypesForm.Top+
PaletteDataTypesForm.Height+27;
end;
end
else
begin
DatatypesPnl.Visible:=True;
DatatypesPnl.Top:=74;
end;
end;
StatusPnl.Top:=Height+10;
end;
procedure TMainForm.DisplaySe
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -