📄 optionsmodel.pas
字号:
EERModel.CreateFKRefDefIndex:=CreateFKRefDefIndexCBox.Checked;
//Refresh Grid Btn
sendCLXEvent(Application.MainForm.Handle, QCustomEvent_create(QEventType_RefreshGridBtn, EERModel));
EERModel.CreateSQLforLinkedObjects:=CreateSQLforLinkedObjectsCBox.Checked;
EERModel.CheckAllRelations;
EERModel.ModelHasChanged;
end;
procedure TOptionsModelForm.SetModel(theModel: TEERModel);
var i: integer;
begin
EERModel:=theModel;
ModelNameEd.Text:=EERModel.GetModelName;
VersionEd.Text:=EERModel.VersionStr;
ModelCommentsMemo.Text:=EERModel.ModelComments;
DBTypeEd.Text:=EERModel.DatabaseType;
TablePrefixCLBox.Items.Assign(EERModel.TablePrefix);
TablePrefixCLBox.Items[0]:=TablePrefixCLBox.Items[0];
TablePrefixCLBox.Checked[EERModel.DefaultTablePrefix]:=True;
DefDatatypeCBox.Items.Clear;
for i:=0 to EERModel.Datatypes.Count-1 do
DefDatatypeCBox.Items.Add(TEERDatatype(EERModel.Datatypes[i]).TypeName);
DefDatatypeCBox.ItemIndex:=EERModel.Datatypes.IndexOf(EERModel.GetDataType(EERModel.DefaultDataType));
FontCBox.ItemIndex:=FontCBox.Items.IndexOf(EERModel.DefModelFont);
RegionColorsMemo.Text:=EERModel.RegionColors.Text;
//At lease 2 Rows (1 fixed an 1 data)
if(EERModel.PluginData.Count>0)then
PluginRecordsStringGrid.RowCount:=EERModel.PluginData.Count+1
else
PluginRecordsStringGrid.RowCount:=2;
for i:=0 to PluginRecordsStringGrid.ColCount-1 do
PluginRecordsStringGrid.Cols[i].Clear;
PluginRecordsStringGrid.Cells[0, 0]:=DMMain.GetTranslatedMessage('Plugin Name', 223);
PluginRecordsStringGrid.Cells[1, 0]:=DMMain.GetTranslatedMessage('Obj.ID', 224);
for i:=0 to EERModel.PluginData.Count-1 do
begin
PluginRecordsStringGrid.Cells[0, 1+i]:=TEERPluginData(EERModel.PluginData[i]).PluginName;
PluginRecordsStringGrid.Cells[1, 1+i]:=IntToStr(TEERPluginData(EERModel.PluginData[i]).Obj_id);
end;
PluginRecordsStringGrid.Row:=1;
PluginRecordsStringGrid.Col:=0;
PluginRecordsStringGridClick(self);
UsePosGridCBox.Checked:=EERModel.UsePositionGrid;
GridXEd.Text:=IntToStr(EERModel.PositionGrid.X);
GridYEd.Text:=IntToStr(EERModel.PositionGrid.Y);
UsePosGridCBoxClick(self);
TableNameInRefsCBox.Checked:=EERModel.TableNameInRefs;
DefaultTableTypeCBox.ItemIndex:=EERModel.DefaultTableType;
ActivateRefDefForNewRelationsCBox.Checked:=EERModel.ActivateRefDefForNewRelations;
FKPrefixEd.Text:=EERModel.FKPrefix;
FKPostfixEd.Text:=EERModel.FKPostfix;
CreateFKRefDefIndexCBox.Checked:=EERModel.CreateFKRefDefIndex;
CreateSQLforLinkedObjectsCBox.Checked:=EERModel.CreateSQLforLinkedObjects;
CanvasWidthEd.Text:=IntToStr(EERModel.EERModel_Width);
CanvasHeightEd.Text:=IntToStr(EERModel.EERModel_Height);
end;
procedure TOptionsModelForm.NewTblPrefixBtnClick(Sender: TObject);
var s: string;
begin
s:='';
DMMain.ShowStringEditor(DMMain.GetTranslatedMessage('Enter new Table Prefix', 225),
DMMain.GetTranslatedMessage('New Table Prefix:', 226), s);
if(s<>'')then
TablePrefixCLBox.Items.Add(s);
end;
procedure TOptionsModelForm.TablePrefixCLBoxClickCheck(Sender: TObject);
var i: integer;
begin
for i:=0 to TablePrefixCLBox.Items.Count-1 do
TablePrefixCLBox.Checked[i]:=False;
if(TablePrefixCLBox.ItemIndex>-1)then
TablePrefixCLBox.Checked[TablePrefixCLBox.ItemIndex]:=True
else
TablePrefixCLBox.Checked[0]:=True;
end;
procedure TOptionsModelForm.TablePrefixCLBoxDblClick(Sender: TObject);
var s: string;
begin
s:=TablePrefixCLBox.Items[TablePrefixCLBox.ItemIndex];
DMMain.ShowStringEditor(DMMain.GetTranslatedMessage('Enter Table Prefix', 227),
DMMain.GetTranslatedMessage('Table Prefix:', 228), s);
if(s<>'')then
TablePrefixCLBox.Items[TablePrefixCLBox.ItemIndex]:=s;
end;
procedure TOptionsModelForm.DelTblPrefixBtnClick(Sender: TObject);
begin
if(TablePrefixCLBox.ItemIndex>0)then
TablePrefixCLBox.Items.Delete(TablePrefixCLBox.ItemIndex);
TablePrefixCLBoxClickCheck(self);
end;
procedure TOptionsModelForm.PluginRecordsStringGridClick(Sender: TObject);
var i: integer;
begin
PluginParamsStringGrid.Cols[0].Clear;
if(PluginRecordsStringGrid.Row-1<EERModel.PluginData.Count)then
PluginParamsStringGrid.RowCount:=TEERPluginData(EERModel.PluginData[PluginRecordsStringGrid.Row-1]).Params.Count;
if(PluginRecordsStringGrid.Row<=EERModel.PluginData.Count)then
begin
for i:=0 to TEERPluginData(EERModel.PluginData[PluginRecordsStringGrid.Row-1]).Params.Count-1 do
PluginParamsStringGrid.Cells[0, i]:=TEERPluginData(EERModel.PluginData[PluginRecordsStringGrid.Row-1]).Params[i];
end;
end;
procedure TOptionsModelForm.MakeEditSettingsDefaultBtnClick(
Sender: TObject);
begin
DMEER.UsePositionGrid:=UsePosGridCBox.Checked;
try
DMEER.PositionGrid.X:=StrToInt(GridXEd.Text);
DMEER.PositionGrid.Y:=StrToInt(GridYEd.Text);
except
DMEER.PositionGrid.X:=20;
DMEER.PositionGrid.Y:=20;
end;
DMEER.TableNameInRefs:=TableNameInRefsCBox.Checked;
DMEER.DefaultTableType:=DefaultTableTypeCBox.ItemIndex;
DMEER.ActivateRefDefForNewRelations:=ActivateRefDefForNewRelationsCBox.Checked;
DMEER.FKPrefix:=FKPrefixEd.Text;
DMEER.FKPostfix:=FKPostfixEd.Text;
DMEER.CreateFKRefDefIndex:=CreateFKRefDefIndexCBox.Checked;
MessageDlg(DMMain.GetTranslatedMessage('Default Settings changed.', 229),
mtInformation, [mbOK], 0);
end;
procedure TOptionsModelForm.SubmitBtnClick(Sender: TObject);
begin
Close;
end;
procedure TOptionsModelForm.AbortBtnClick(Sender: TObject);
begin
DiscardChanges:=True;
Close;
end;
procedure TOptionsModelForm.SubmitBtnMouseEnter(Sender: TObject);
begin
TSpeedButton(Sender).Enabled:=True;
end;
procedure TOptionsModelForm.SubmitBtnMouseLeave(Sender: TObject);
begin
TSpeedButton(Sender).Enabled:=False;
end;
procedure TOptionsModelForm.UsePosGridCBoxClick(Sender: TObject);
begin
GridWidthLbl.Enabled:=UsePosGridCBox.Checked;
GridXEd.Enabled:=UsePosGridCBox.Checked;
GridWidthUnitsLbl.Enabled:=UsePosGridCBox.Checked;
GridHeightLbl.Enabled:=UsePosGridCBox.Checked;
GridYEd.Enabled:=UsePosGridCBox.Checked;
GridHeightUnitsLbl.Enabled:=UsePosGridCBox.Checked;
end;
procedure TOptionsModelForm.RemovePluginDataClick(Sender: TObject);
var i: integer;
begin
if(MessageDlg(DMMain.GetTranslatedMessage('Are you shure you want to delete the selected Plugin Data?'+
'This action cannot be made undone.', 230), mtConfirmation, [mbYes, mbNo], 0)=mrYes)then
begin
if(PluginRecordsStringGrid.Row-1<EERModel.PluginData.Count)then
EERModel.PluginData.Delete(PluginRecordsStringGrid.Row-1);
for i:=1 to PluginRecordsStringGrid.RowCount-1 do
PluginRecordsStringGrid.Rows[i].Clear;
//At lease 2 Rows (1 fixed an 1 data)
if(EERModel.PluginData.Count>0)then
PluginRecordsStringGrid.RowCount:=EERModel.PluginData.Count+1
else
PluginRecordsStringGrid.RowCount:=2;
for i:=0 to EERModel.PluginData.Count-1 do
begin
PluginRecordsStringGrid.Cells[0, 1+i]:=TEERPluginData(EERModel.PluginData[i]).PluginName;
PluginRecordsStringGrid.Cells[1, 1+i]:=IntToStr(TEERPluginData(EERModel.PluginData[i]).Obj_id);
end;
PluginRecordsStringGrid.Row:=1;
PluginRecordsStringGrid.Col:=0;
PluginRecordsStringGridClick(self);
end;
end;
procedure TOptionsModelForm.PageControlChange(Sender: TObject);
begin
MakeEditSettingsDefaultBtn.Visible:=(PageControl.ActivePage=EditOptionsSheet);
end;
procedure TOptionsModelForm.PageControlTreeViewChange(Sender: TObject;
Node: TTreeNode);
begin
PageControl.ActivePageIndex:=PageControlTreeView.Selected.AbsoluteIndex;
PageControlTitleLbl.Caption:=PageControlTreeView.Selected.Text;
end;
procedure TOptionsModelForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if(Key=Key_Escape)then
AbortBtnClick(self);
end;
procedure TOptionsModelForm.CanvasWidthEdChange(Sender: TObject);
begin
if(CanvasWidthEd.Text<>'')and(ActiveControl<>CanvasHeightEd)then
CanvasHeightEd.Text:=IntToStr(Round(StrToInt(CanvasWidthEd.Text)/1.4412385643912737508796622097115));
end;
procedure TOptionsModelForm.CanvasHeightEdChange(Sender: TObject);
begin
if(CanvasHeightEd.Text<>'')and(ActiveControl<>CanvasWidthEd)then
CanvasWidthEd.Text:=IntToStr(Round(StrToInt(CanvasHeightEd.Text)*1.4412385643912737508796622097115));
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -