界面库

整理代码
This commit is contained in:
JianjunLiu 2022-10-11 17:03:09 +08:00
parent 3546020970
commit 444603eb38
7 changed files with 439 additions and 361 deletions

View File

@ -18,7 +18,7 @@ type TVclDesigner = class(tvcform)
fwindowinfos; //窗口文件节点存储对象
fcutcopyinfo;//复制的信息
FChmHelper; //帮助文档
FImageList; //ͼ±ê
fdimagelist; //图标
FViewBitmap; //图片管理器
FVariableSelecter; //当前控件树的变量
FFunctionSelecter; //当前控件树的函数
@ -68,12 +68,12 @@ type TVclDesigner = class(tvcform)
**}
for i,v in class(TDComponent).GetClassItem() do
begin
FImageList.RegisterDitem(v);
fdimagelist.RegisterDitem(v);
//if not v.InToolBar() then continue;
tb := new TToolButton(self);
tb.caption := v.HitTip;
tb.Enabled := v.InToolBar();
ig := FImageList.GetImageId(V.dclassname);
ig := fdimagelist.GetImageId(V.dclassname);
tb.imageid := ig;
v.Imgs := ig;
tb._tag := v;
@ -105,7 +105,7 @@ type TVclDesigner = class(tvcform)
tr := ftree;
if nd then
begin
tr := fwindowinfos.gettreebyid(nd);
tr := fwindowinfos.gettreebyid(nd);
end
if not tr then return ;
it := tr.RootItem;
@ -296,7 +296,7 @@ type TVclDesigner = class(tvcform)
end
return r;
end
public
public //设计器工程
function OpenFileFromTpjFile(); //从文件打开工程
begin
FProjectFileOpener.caption := "打开";
@ -448,7 +448,7 @@ type TVclDesigner = class(tvcform)
)
);
end
public
public //编辑器中代码操作
function DeleFiledFromEdit(n,nn); //删除变量
begin
if FTree.Loading then return ;
@ -478,7 +478,7 @@ type TVclDesigner = class(tvcform)
begin
FProjectManager.SetProjectInfo(n);
end
private
private //设计器控件的事件响应
function tablelines(str,n);
begin
lines := str2array(str,"\r\n");
@ -573,7 +573,7 @@ type TVclDesigner = class(tvcform)
end
end
public
public //控件选中
//****************************************
function CreateComponent(); //构造控件
begin
@ -642,7 +642,7 @@ type TVclDesigner = class(tvcform)
setcomponentfocus(wd,true);
return t.SelectedNode();
end
private
private //右键菜单处理
function RClickComponent(o,e); //右键控件窗口
begin
{**
@ -679,7 +679,7 @@ type TVclDesigner = class(tvcform)
end
end
//FClickTime;
public
public //双击添加事件到代码
function addandopeneventbyname(nd,n); //打开事件函数位置
begin
if nd then
@ -736,7 +736,7 @@ type TVclDesigner = class(tvcform)
if o then AddAndOPenEvent(o._tag);
if e then e.skip := true;
end
private
private //节点点击
function ClickComponent(o,e); //点击组件选择
begin
{**
@ -821,7 +821,7 @@ type TVclDesigner = class(tvcform)
**}
FProjectManager.CloseCurrentEdit(nil,true);
end
public
public //设计器中绑定事件
function BindCwndMessage(wnd); //给控件绑定处理函数
begin
{**
@ -865,7 +865,7 @@ type TVclDesigner = class(tvcform)
fwindowinfos.deletedata(wndnode);
tr.Recycling();
end
private
private //不同窗口切换
function hidenatree(nd);//隐藏控件树
begin
FCurrentNode := nil;
@ -929,10 +929,14 @@ type TVclDesigner = class(tvcform)
end
end
end
public
public //加载以及处理
function ExecuteCommand(cmd,p);override;
begin
case cmd of
"imglist":
begin
return fdimagelist;
end
"allopendnod":
begin
r := array();
@ -1021,7 +1025,7 @@ type TVclDesigner = class(tvcform)
it := new TDPanelForm();
end else return ;
it.dclassname(d["class"]);
it.Imgs := FImageList.GetImageId("tdcreateform");
it.Imgs := fdimagelist.GetImageId("tdcreateform");
end
comp := it.ComponentCreater(node,wr);
comp.name := d["name"];
@ -1160,9 +1164,9 @@ type TVclDesigner = class(tvcform)
Mobjinspect();
onactivate := thisfunction(OnDesignerActivate);
FImageList := new TDesigImageList(self);
//FTree.Imagelist := FImageList;
fwindowinfos := new tfilesinfo(self,thisfunction(ClickTreeNode),FImageList,tparent);
fdimagelist := new TDesigImageList(self);
//FTree.Imagelist := fdimagelist;
fwindowinfos := new tfilesinfo(self,thisfunction(ClickTreeNode),fdimagelist,tparent);
//******************toolbar ***************
tlbar := FProjectManager.FTslEditer.gettoolbar();
savebtn := FProjectManager.FTslEditer.gettoolbarbtn();
@ -1186,7 +1190,7 @@ type TVclDesigner = class(tvcform)
sp1.parent := self;
FToolBars := new TDesignertoolbars(self);
FToolBars.parent := self;
FToolBars.Imagelist := FImageList;
FToolBars.Imagelist := fdimagelist;
FToolBars.Font.width := 9;
FToolBars.Font.height := 18;
@ -1207,7 +1211,7 @@ type TVclDesigner = class(tvcform)
end
property VariableSelecter read FVariableSelecter; //当前控件树的变量对象
private
private //其他资源函数
function ViewBitmap(o,e);
begin
if not FViewBitmap then
@ -1364,7 +1368,9 @@ type tfilesinfo = class() //
if not nd then
begin
tr := new TComponentTree(fdesginer);
img := fdesginer.ExecuteCommand("imglist");
tr.visible := false;
tr.ImageList := img;
tr.Align := tr.alClient;
tr.parent := fparent;
tr.onselchanged := fcompclick;
@ -1593,7 +1599,7 @@ type TDesignertoolbars = class(TPageControl) //
st.caption := t;
tb := new ttoolbar(self);
tb.align := alClient;
if t<>"·Çµã»÷Ìí¼Ó¿Ø¼þ" then
if t<>"隐藏" then
begin
st.parent := self;
tb.parent := st;

View File

@ -237,9 +237,13 @@ type TProjectView = class(TVCForm) //
end
FFilterList.SetData(d);
end
function saveformcode(); //±£´æµ±Ç°class
function saveformcode(fn); //±£´æµ±Ç°class
begin
it := FTslEditer.GetCurrentItem();
if ifstring(fn) and fn then
begin
it := FTslEditer.OpenAndGoLineByName(fn);
end else
it := FTslEditer.GetCurrentItem();
FTslEditer.SavePageItem(it);
end
public
@ -682,7 +686,7 @@ type TProjectView = class(TVCForm) //
begin
r := FCurrentOpend.gettsfname();
FTslEditer.Addfiled(r,n);
saveformcode();
saveformcode(r);
end
end
function adduses(lbs); //添加成员
@ -691,7 +695,7 @@ type TProjectView = class(TVCForm) //
begin
r := FCurrentOpend.gettsfname();
FTslEditer.adduses(r,lbs);
saveformcode();
saveformcode(r);
end
end
@ -701,7 +705,7 @@ type TProjectView = class(TVCForm) //
begin
r := FCurrentOpend.gettsfname();
FTslEditer.Delfiled(r,n,nn);
saveformcode();
saveformcode(r);
end
end
function AddAFunction(ff); //添加函数
@ -711,15 +715,16 @@ type TProjectView = class(TVCForm) //
s := createtslfunction(ff);
fn := FCurrentOpend.gettsfname();
r := FTslEditer.AddFunction(fn,ff["name"],s);
saveformcode();
saveformcode(fn);
ShowEditor();
return r;
end
end
function GoToAFunction(n); //跳转到函数
begin
r := FTslEditer.GoToFunction(FCurrentOpend.gettsfname(),n);
saveformcode();
fn := FCurrentOpend.gettsfname();
r := FTslEditer.GoToFunction(fn,n);
saveformcode(fn);
ShowEditor();
return r;
end
@ -754,13 +759,15 @@ type TProjectView = class(TVCForm) //
begin
//打开class
fn := FCurrentOpend.gettsfname();
it := FTslEditer.OpenAndGotoFileByName(fn);
if FTslEditer.getpageitemcount()<1 then
it := FTslEditer.OpenAndGotoFileByName(fn);
else it := FTslEditer.OpenAndGoLineByName(fn);
if not it then
begin
FCurrentOpend := nil;
return messageboxa("文件不存在","错误",0,self);
end
classinfo := FTslEditer.GetClassInfo();
classinfo := FTslEditer.GetClassInfo(it);
if not(ifarray(classinfo)and classinfo)then
begin
FCurrentOpend := nil;
@ -1642,7 +1649,14 @@ BD141CA912494F502D48D224F45050274A21E03806FF2C7CA7516022D7D000000
end
function GetClassInfo(n); //获得信息
begin
if n and ifstring(n)then it := OpenAndGotoFileByName(n);
if n and ifstring(n)then
begin
it := OpenAndGotoFileByName(n);
end else
if ifobj(n) then
begin
it := n;
end
else it := GetCurrentItem();
if it then
begin

View File

@ -467,6 +467,7 @@ type TPage=class(TCustomControl) //
property CloseBtn read FCloseBtn write SetCloseBtn;
property Lines read FLines;
property PageItems read FPageItems;
property pageitemcount read getpageitemcount;
property ItemIndex read FItemIndex write SetItemIndex;
protected
function CallSelChanged();virtual;
@ -579,6 +580,10 @@ F47AC96526C21CCB26FD326A2180CC21F5CAC302CA5C842B865FD9D7003D1F17B
DoControlAlign();
end
end
function getpageitemcount();
begin
return FPageItems.length();
end
function SetItemIndex(idx);
begin
if idx >= 0 and idx<FPageItems.Length()and idx <> FItemIndex then
@ -1913,6 +1918,10 @@ type TEditer=class(TCustomcontrol) //
end
end
end
function getpageitemcount(); //获得页面数量
begin
return FPageEditer.pageitemcount;
end
function CloseAllPageItems(it);
begin
its := FPageEditer.PageItems;
@ -5084,62 +5093,15 @@ begin
r["打开文件"]:= getopenfilebmpinfo();
r["保存全部"]:= getsaveallbitmapinfo();
r["保存"]:= GetSaveFileBitmapInfo();
r["取消注释"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100022001000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000B549444154
5847ED95C109C5200C40FF4E4EE15D07D0832B787142F1EC0C2EE03925FC2A9F9
2160A7EE3C10739546DF220113FC0CC16D8026B0AD45A21A5343430270529E09C
0321C4D0C09C146B0AB0B76026EB0B78EF2184707E8DE751008BB721C23EFE035
2A094024AA95EDC180331C63E5039E7F3E497B6FE14AF86504AD98BDF45039353
FBD778750DD905B0055AEBFEB3B5766E0B1A6C43F80BEB359CC19A02EC8F11FB7
3CC2EC0DE82996C812DC02C0070005765629339C9EFE60000000049454E44AE42
608200";
r["注释"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100021201000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000A749444154
5847ED94410A80201045BB9377F20A6EBD9757F03A82BB8909021333B56F1AF8E
0D3A2181F8CFD8D06B30496C09C02CE39B2D642C333532405A4942484808667A6
985360F80ABEE41F02C6986387FC445324105E26B444D125D45A6725C26FEF02E
F81538287A7DEC781F740578170058C52EA32ACFB0A42BCF7D9C3DFF228C0F0A1
437FC39ECC2910F70022F01EA80DBC076AD3DC03A834F7406F96C012182C40B40
319335F36295E4B140000000049454E44AE42608200";
r["取消注释"]:= getedituncommetbmpinfo();
r["注释"]:= geteditcommetbmpinfo();
r["tsl代码格式化"]:= gettslcodeformatbitmapinfo();
r["撤销"]:= getredobitmapinfo();
r["反撤销"]:= getunredobitmapinfo();
r["tsl语法检查"]:=gettslsyntaxcheckbitmapinfo();
r["tsl代码格式化"]:= gettslcodeformatbitmapinfo();
r["tsl语法检查"]:=gettslsyntaxcheckbitmapinfo();
r["查找"]:=getfindbitmapinfo();
r["后退"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100027501000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000010A49444154
5847EDD3218B84501405E0FD8B16AB60325A15C162325A0C2641D0603319AC822
641EC62B2984C8270969179CBCC70C75D771FCAC23B708A70BD1F3CEE072E8E00
088000FC5F405DD7304D13711CDFBFFC2E8701E338C2F77D4892B4F5544096655
055F56BF96980A66960DBF6D3E25300D3342108027231AB65591BE2481FF31690
E739344D2397FEB56DDBDEB71080AEEBE0380E39C8AB6F0161189203BC4B02E67
9866118E400EFEE3E4151145014851CE4D55DC02DCBB2208A22729847BF05B0F4
7D0FD775C99FB052679824C96E1FB30B6029CB12BAAE9380D7BB3E9A1F016E59D
715699A4296E56B002CC330C0F3BCEB002C55556D677B19805704400004E06200
F00985F34928814F15230000000049454E44AE42608200";
r["前进"]:= "0502000000060400000074797065000203000000696D670006040000006461746
10002E501000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000017A49444154
5847C5963D4BC3501486F33B440DE220520D3AA888ABAB8A28A26DA9F5A355549
42EAE4E8E8E6ECE4EFE011737870E8E82AB38EB0FB8E7B6C79EF6857EA569D2DC
9B3CE585F4DE03EF43C897C331D9A0031C8D466C8129B5C05B94C3BFE81811185
3B3BC4D79AC44C3988064870A580D8F5101C92E15B1130EE302923D3AC2EE70AC
0848F6E90413C158139064A984A9C1581590E4A98C497F9CF75A95E3649880A44
0E7A8EBC7918165B51E2BBD857E39D417A8ECA62990548A7489DA36890A488EE9
0AD52D1217909CEA6BD4A7242029D14DBA02923255D213985073E99D0157CD37C
B85C4055CF250DD2251015779AC1ABF4E121390D3FE5BFF436D9BA680DFE3B533
2B149CDEB2DE4C362EB86FFE416537D65F4672B57FD6BF50D78FD5D7F1B8CA70B
5FE81497FAC0ABCD6DE3035182B021EADF1B37EC14430C605326A951FF5137687
635460462DF1BD7EC04E388C094CAB45BED577580D8F1101B9D5CE74052BD1302
290D3C15FBE41C416D8A42C8E4681F91F06F7DA0A168403F80000000049454E44
AE42608200";
r["后退"]:= getbackwardbitmapinfo();
r["前进"]:= getforwardbitmapinfo();
r["快捷键说明"]:= getquickkeybitmapinfo();
r["代码地图(alt+m)"]:= gettslcodemapbitmapinfo();
r["分隔符"] := 0;
@ -5148,164 +5110,16 @@ end
function dbugicos();
begin
r := array();
r["添加/删除断点F5"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100022B01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000C049444154
484B63F84F6330022CB0769FF85F58A98A280C528B0EF05A1095BAE8FFCEBD37A
03CC200A416A40719E0B500E42A5201BA1EFA5AB076D3C5FFF6DE93C16179E4F8
5DEA5B6064DFFDFFF6DDD7501E0D7C802E396A01088C5A800148B2A073E2DEFF3
9A56BFE6FD87A99280C52DB31610F543704E0B500040E1CB9FD3F2967195118A4
161D10B4801000F9121FA0AF0520C5DA961D58BD8F0DFB45CEFE7FEFC11BA86EE
C00C50210F8F0F13BD608C48689011816501B0C750BFEFF070066B64F1FB7C689
CB0000000049454E44AE42608200";
r["暂停"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100022401000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000B949444154
484BED8FBB0AC2401045AD2CC4CA0FB0D0CA5E1B7F401B3F3C820A29825A98F8C
A0F988744E2C459278F6598ADB450F6C06DE6C23D4C0BBECC1F0B1EE105B2E3E1
9D934FD79AAA7B258F6E74E58882FDA807DB7EBBCA3389A90148374BAD0B16536
A38A2A03980C9E3881A8064EDB05E4214EC061D6DC024F067636A3856A062052A
56C0B0821251D01CC098041809F98361571B300982F9841A8E28B87BAE1AC2A4E
E8AAE356587C9AE67BA7244C1A7F875014001DF29EF2FFBC3E1B1000000004945
4E44AE42608200";
r["继续"]:= "0502000000060400000074797065000203000000696D670006040000006461746
10002E201000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000017749444154
484BAD95CB2E035118C73D835BB4112511D61E80A7B0747900AFC003D892A84E1
B246CEC24166A8145C3A60B21128BCE8CA6F4128AD665A42EF93B47BF3363B43A
9D73E697FC33E93933DFAFFDE6CB690788C5F43DB4F30A7D0A0E5B90BAB1108AE
9984916706B7DD2AA3A2E4124AEA3279A41E74A06CBA70FB4A3864B3098307E8A
F3441226C636B338BAB6E80E39DC82B82310E16D9BDD2F4AB7CD53C0A3D2B6B60
422036CDF6FDB7C0944FC4C9B9480C769DB2355688EB440A4DEB62B1CE65EA992
1B6581482866603AD9386D81097844DBCCCA3B550D5AB0AA63FEF88E2AD609443
0C44E8089ED1CD2A537AAE6A024E863DFB88B5DA367FF4F92B420ACE998DA2B22
5B75FADD0CDF827ECDC0C8BA891DFD999E6C8D6FC1C249194FB52F7ACA9BB6046
176348CB39798CAFB3FBADD825FFF0722DD6CB6973C8E8356FC119876613E1D93
BB795C946B74871C0D82DEA88EE135135B9755DA51C316F0711BDD3031775042E
1E58356D5B1051CFE2B8205F806770EAF93F6C525FA0000000049454E44AE4260
8200";
r["进入"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100028401000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000011949444154
484BB5954B0AC2301086BD9E3771E3C643780B578AA2A0541405A122EE558A4F7
C811B372E4410DF1219496B8393F4B7EA0759740AF36566DA2422FE8C2248778E
62B5BDCB2795F6F2F25C9FE209287934B513B1D29E95D03B5AD9DE494630940A9
2CD835692E99E3C49C139CB68306F334025C53E56093B6454620D832B6105042A
A98ECD83D70A0854529FE8254601814A1A53BE5D8102C224713F6F5AF6FCBD124
840A095B416AA041610AE245EDECBC80BBFC4595F6534A42051310B669B9B8CFE
A845FE39846A11DA7F7B1662C8E8CE1B53FE5F300AD0E4B589FEC8D00AD0B6544
6FCCE5D58019ADC1A8438ECD0E4C53E762728023479DEC16F354F805E99B96FAE
4C9270C909FA527427A60976C8BF43880799B976B3940BD8ED0000000049454E4
4AE42608200";
r["跳出"]:= "0502000000060400000074797065000203000000696D670006040000006461746
10002ED01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000018249444154
484BCD933B4BC3601486FD0F3A3938D841872E0A0AD2C1C141271727577111A48
30E855625A09680507410844E2E2A88508428B45EF082850A2254F1822288E0CF
3872EC39C9C9E5FB92140B3EF041F39E93F7214DDB062DE67F09CCF513D8DEADD
15534220BA66677A0BD3BFB7BF2850AA5E14412C8723E86794C533DA102598E9F
E5F5C28A455B6AB4026F3923F38C714869304A81AA9C91F3B95C89523F8182B07
246EEA5330794BAF109A29633727F667E9F520797206E3923EF9B4EEF51DAC016
E09F48575EB2EA901ADD80B1892D7878FAA6D4414A16F347940A01FEAE75E57C3
39EC19102DCD7BF68EAC092CDE215258A972CF196F3E91F5E83DBBB4FDA52A315
78CBF15A66C92113AAB50FDA0E4629082A67E4AC6760152E6FDE68E22750A02B6
7E44EA26F194E2F5E69E2C6278852CEC8DDAEA401E5B3679A38B80471CA19794F
67EF1258E5479A34B00595F397D8E58C947424B2705D7DA789108C4F169B2A67A
404BB185B80561CE093340B7E3DB21CF1BDE4BFA6C502801FF275D8DB8771B6A3
0000000049454E44AE42608200";
{r["单步"] := "0502000000060400000074797065000203000000696D670006040000006461746
100025701000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000EC49444154
484BC5D5CD09C240108661EBB003CBB0801460035E723087282A117F886024A0A
0276F962558893B616565844427BB331B832F783003DF83E46047B7DCFF819BBE
EB0B5CF19B3C2B60C6FB2AD0DD474F0F21C2A7B26A81F2F8FBE383587F41561C2
B800FE27C079B62DF087102A604B6DE080B304D60E985B0015304733122024C21
8C45881830E5707A8D72102FE073FC05A81F01D478A862BC7E2702A8F111CCF04
AC706A8F1181678AD8F0550E35358E3D59E13A0C61348F1EACE0A50E32BC8F0CA
CB0A046A50194F21C70B3F2B50FE4FD8C1019FCA72BE0383E4C519BFC973024D6
B19D0FA0973865C3E24DD42ED0000000049454E44AE42608200";}
r["下一行(F8)"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100025E01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000F349444154
484BED93CD0A015118865D835BB0B37509EEC2CE6DB8105694B29C859548766E4
0ACFC6450148A1AA349C3A7777E0E66CE9C9F290BE5A96F31DF999EA74E9D0C7D
997F400A0B5C6E77AA8D4E3458DBC1261D8EFBA0C6E44CFBABEB7DB340D1D850B
63AF3A6DCDB055B3DDA738BF2CD25F3F457B61F30A6165B86A31B813CEA28B44C
3F303E3AB1438C6A8427C7943ADBD71541C6FB4916499263BA66704521BA11911
C67E0230054232A72100B005944550EB801208AF0F698A81C24068048161D9E1C
08034025922407D200D0BD96779402801791C9817200548607CAD517DE0B55910
3AD401AFE0129BF1E207A02B9FA383F9BCBB70F0000000049454E44AE42608200
";
r["终止"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100026602000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000001FB49444154
484BED94596B145114847DC8BEAF6423FBBE424296FFFF3F444386CC609C314EA
2AD498629EBEBE92B361C8982C197141C98BEC3AD3A5DA74EBFD10BE355E059FC
1F81F6D999F46B9D9E4AC7C7D2D191B4BFAF2757B6B7A7A6ABE1AAF9B9727050D
C2E237E03482F2E3A757EDE793E39E908ECEE4A9B9B7A747DDDD8D0EDD6966EB6
B755D9D9292E97F16702E90D0E0F2593696D4DAD951565CBCB6AAEAEEAA39FABE
BEBC5E5327E2F007122A77BC8E91EA2A525696E4EDFE7E775B7B0A0FAE2A2AA16
8B100B409ABC4FD6D86BAC913B9789DB53537A74DDCDCCA8313BABAACF22C402D
80171B205727B9D93BB6399B83D36A607D7FDF8B81A9393AA4D4F1797CB8805E8
984AB6D0B9BDCEC9211A1D556B6848DF5CF7C3C3AA8F8CA83631515C2E231670E
C7262068AE7A9F3825CFDFD7AEAEB53D6DBABE6C080EA16AA5A24422840CEF3AE
9D8E7CA0F86B5B1279CBE40F3D3DFAD2DDAD4F16B9B1C8F5DF08B044E49C28921
6068AE7D842E790675D5DFA6C8186AB66D18AFF8B100AB0A12C1139278AA48581
E27966323A4FE41FFC06D73EBB1A1C2C6E97110AB0FE6C284B44CE89226961A07
88E2D3FC95D573E7BEFFF2284027C5B587F36942522E74491B430503CC796BC73
FFBEF4D93BE6132014E0C3C5B785F567435922724E14490B03C5F34B774DE790B
F75031142817F89578167F1C202D20F98CF9591BE2EF7850000000049454E44AE
42608200";
r["刷新符号表"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100027702000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000020C49444154
484BC596DD4B145118C6FBEBBA13C12B6FBAE8224C414A08BA116BD584C050171
752D02093B6442D2F84CA34B520D35CBFC036493445CAAC50776D5D9DF771DEF3
313B677766F6EBA21F3C3767E73CCF9CF39EF3CE5E42996CEF03D7C2845B7DA44
64C0203D2E7C0EE0110FB068C2F1086DE1396364DA3CE1784CB8D96D0444C0DBA
F00D189F275C699713BD74B5C342FB70C69C551B21A4D2E60BE404ECFC025A9E9
A138BD1E05440006F49436FE9E6ACAA7B16BEDB75D118010F46CB33D7EAB0EBA2
71020626A5F9F56E0B8FDF5A58DF31977A74024C2E93D8F7EAFBDEC66E2D6CC87
94E4043AF4C3E4CAA81003E7E81A7A95BFC928C08F89B80335008AD51FFADAC6A
B5C4EF7C3F181130B3666E473EF8526943DEAEBB8384E88CBC23E933F590C2287
2A1FCF80361B6F75B0D0450524031FCFF80AD9F843731C2A7787175D2E40424FE
01EF5608E131428D7D277431FDBAA51FF35FE5F34E001FD31B3D19C36CF5BF2E2
CE0E4541E63DD2E44009B7B99BAB5B6259E0F64D16EEBF50F65173E55C755046C
EC0115216F63AD8A10A1E909E1F92C612E2E8FA9D6C807C2ED4799BBF1EA7366B
5CE16E95E54AEBA5E9A1DC10948A581BA88F7A44275C75E61364E0033B592BF89
F9697A5599646104306DCFCC89BCE49B76A7AD6C36C759B5F631E60E1CDF55933
DC80970173CBBC31EDBDF84ED7D59D8644A0DE62127806163FE2BA25B6EE90017
13C9EE8D2E4822C60000000049454E44AE42608200";
r["刷新当前符号"]:= "0502000000060400000074797065000203000000696D670006040000006461746
100027802000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000020D49444154
484BB594DD2BA74114C7F7EF70A914529262BD5C798B645F5A2552EE5C4872837
2B1524A6D5C59C566A98D52ECC55228B4ED850B3724424A5A89B8D9B597CFBC1C
7D4F679EE691C76EC37E6AFACD3933BFF93E73E63BF382FE3309815DBB4F8BF61
B4DE8695AB7DF25FB34628151F39132A29C442B5655321A0E0B1CDAE378D1CF66
96CEE827B5EA768E87F4084F0C8505E6CC022F76BF2CF9513995A81A89C260812
F669E05F0E53E9DBA87B2A32289C260814B7BC502288B0F726DBA43A230E243C6
D7624194A5570F701FED5FDC8439701E1C0827FAC402E0AB59A6DCE8252FDCAEB
B69D9ACC9483A709AFB18D7E04847420038BBD6AA46C9A40387612E4A8BF38303
9D089C095205D046F498641F060E43497D502EFC17CE04A9020366987FDFA936D
AB17B329A24332AE0B3F3C14EF03F9C09481500AB6683AAD55B8E1B54330DEA0F
B465B669D12CD1A499A14AF5269EEB7017D499E35101704B7F68CC7CA20AF59AF
37E2B53B5BC0BF4E13C940B7DFF89F9AB800FC40EEC119DD853C910EFE8956AA1
2C55C86772FF694908F836456D7FD16F1909271670170D027E7FD3FC901961B0C
0B9BDE005BB741F271DC8F5E8F71285C102D37241AEE986930E1C5C5E542A5118
2C80370402B8893E285179542751182C80070A0268F02F76827221EED6FD3C319
4F890FD27C2B57AD524A3E1C402000F14DE907133452B765DB24F2321F0FC10DD
0144332BF870524ED00000000049454E44AE42608200";
r["添加/删除断点F5"]:= getdbugaddbreakbmpinfo();
r["暂停"]:= getdbugsuspendbmpinfo();
r["继续"]:= getdbugcontinuebmpinfo();
r["进入"]:= getdbugsetpinbmpinfo();
r["跳出"]:= getdbugstepoutbmpinfo();
//r["单步"] := getdbugmcronextbmpinfo();
r["下一行(F8)"]:= getdbugnextbmpinfo();
r["终止"]:= getdbugstopbmpinfo();
r["刷新符号表"]:= getdbugfreshsymsbmpinfo();
r["刷新当前符号"]:=getdbugfreshsymbmpinfo();
return r;
end

View File

@ -650,14 +650,14 @@ type TDRootComponent = class(TDComponent)
end
//************TImageList***********************
type TDVirutalWindow = class(TCustomControl)
type TDVirutalWindow = class(TCustomControl) //无窗口控件的虚拟窗口
{**
@explan(说明) 非可视控件的窗口容器 %%
**}
private
FBitmap;
FBindComponent;
FWindowFileds;
FBitmap; //图标
FBindComponent;//绑定的设计控件
FWindowFileds; //窗口的属性
function SetBindComponent(v);
begin
if v is class(TComponent) then
@ -676,7 +676,7 @@ type TDVirutalWindow = class(TCustomControl)
reindex(r,rdx);
return r;
end
function getnotnil(ra);
function getnotnil(ra); //获得非空的属性
begin
r := array();
for i,v in FWindowFileds do
@ -713,7 +713,7 @@ type TDVirutalWindow = class(TCustomControl)
begin
return nil;
end
function GetPublishProperties();override;
function GetPublishProperties();override; //获得属性
begin
r := inherited;
r := r[FWindowFileds];
@ -722,21 +722,21 @@ type TDVirutalWindow = class(TCustomControl)
if r2 then
begin
deletefiled(r2);
return r union r2;
return (r union r2);
end
return r;
end
function GetPublishEvents();override;
function GetPublishEvents();override; //获得消息处理函数
begin
r := array();
if FBindComponent then
begin
r := FBindComponent.GetPublishEvents();
return r;
end
if not r then return array();//array(1:nil);
return r;
end
function GetChangedPublish(f);override;
function GetChangedPublish(f);override; //获得改变的属性
begin
r := getnotnil(inherited);
if not FBindComponent then exit;
@ -748,7 +748,7 @@ type TDVirutalWindow = class(TCustomControl)
end
return r;
end
function SetPublish(n,v);override;
function SetPublish(n,v);override; //设置属性
begin
if n in FWindowFileds then
begin
@ -759,7 +759,7 @@ type TDVirutalWindow = class(TCustomControl)
return FBindComponent.SetPublish(n,v);
end
end
function DesigningSizer();override;
function DesigningSizer();override; //鼠标改变大小
begin
return false;
end
@ -904,7 +904,7 @@ type TDForm = class(TDComponent)
end
function classification();override;
begin
return "非点击添加控件";
return "隐藏";
end
function HitTip();override;
begin
@ -974,7 +974,7 @@ type TDMenu = class(TDMenuBase)
end
function classification();override;
begin
return "非点击添加控件" ;
return "隐藏" ;
end
function InToolBar();override;
begin
@ -1682,7 +1682,7 @@ type TDToolButton = class(TDComponent)
end
function classification();override;
begin
return "非点击添加控件" ;
return "隐藏" ;
end
function InToolBar();override;
begin
@ -2009,7 +2009,7 @@ type TDAction = class(TDComponent)
end
function classification();override;
begin
return "非点击添加控件" ;
return "隐藏" ;
end
function InToolBar();override;
begin
@ -3226,7 +3226,7 @@ type TDPairSplitterSide = class(TDComponent)
end
function classification();override;
begin
return "非点击添加控件" ;
return "隐藏" ;
end
function menus();override;
begin
@ -3337,7 +3337,7 @@ type TDTabSheet = class(TDComponent)
end
function classification();override;
begin
return "非点击添加控件";
return "隐藏";
end
function SelectedNode();override;
begin
@ -3451,7 +3451,7 @@ begin
class(TDcoolBar),class(TDToolBar),class(TDStatusBar),class(TDToolButton),
class(TDTray),
class(TDActionList),class(TDAction),
class(TDQuotations),class(TDtlogincontrol),
//class(TDQuotations),class(TDtlogincontrol),
class(TDmessagebox),
class(TDBtn),

View File

@ -13,8 +13,21 @@ function GetOpenFileBitmapInfo();
function GetTrayBitmapInfo();
function GetImageListBitmapInfo();
function GetTimerBitmapInfo();
function geteditcommetbmpinfo();
function GetSaveFileBitmapInfo();
function getedituncommetbmpinfo();
function getdbugaddbreakbmpinfo();
function getdbugsuspendbmpinfo();
function getdbugcontinuebmpinfo();
function getdbugsetpinbmpinfo();
function getdbugstepoutbmpinfo();
function getdbugmcronextbmpinfo();
function getdbugnextbmpinfo();
function getdbugstopbmpinfo();
function getdbugfreshsymsbmpinfo();
function getdbugfreshsymbmpinfo();
function GetMainMenuBitmapInfo();
function gethighlighterbitmapinfo();
function GetActionListBitmapInfo();
function GetPopUpMenuBitmapInfo();
@ -40,6 +53,8 @@ function getdbugerrunbmpinfo();
function getopenfilebmpinfo();
function getsaveallbitmapinfo();
function getredobitmapinfo();
function getbackwardbitmapinfo();
function getforwardbitmapinfo();
function getunredobitmapinfo();
function gettslsyntaxcheckbitmapinfo();
function gettslcodemapbitmapinfo();
@ -452,6 +467,33 @@ E75F6B92237701200B4A4F07417AD477FE77239FDF2CF3C05A576BFC3590203F4
A7AFB93CA55249BFFCBBBAE83B447E01A5FB392686E583230000000049454E44A
E42608200";
end
function geteditcommetbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100021201000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000A749444154
5847ED94410A80201045BB9377F20A6EBD9757F03A82BB8909021333B56F1AF8E
0D3A2181F8CFD8D06B30496C09C02CE39B2D642C333532405A4942484808667A6
985360F80ABEE41F02C6986387FC445324105E26B444D125D45A6725C26FEF02E
F81538287A7DEC781F740578170058C52EA32ACFB0A42BCF7D9C3DFF228C0F0A1
437FC39ECC2910F70022F01EA80DBC076AD3DC03A834F7406F96C012182C40B40
319335F36295E4B140000000049454E44AE42608200";
end
function getedituncommetbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100022001000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000B549444154
5847ED95C109C5200C40FF4E4EE15D07D0832B787142F1EC0C2EE03925FC2A9F9
2160A7EE3C10739546DF220113FC0CC16D8026B0AD45A21A5343430270529E09C
0321C4D0C09C146B0AB0B76026EB0B78EF2184707E8DE751008BB721C23EFE035
2A094024AA95EDC180331C63E5039E7F3E497B6FE14AF86504AD98BDF45039353
FBD778750DD905B0055AEBFEB3B5766E0B1A6C43F80BEB359CC19A02EC8F11FB7
3CC2EC0DE82996C812DC02C0070005765629339C9EFE60000000049454E44AE42
608200";
end
function GetSaveFileBitmapInfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
@ -473,6 +515,194 @@ FEF7B0502F713105A2E9751A95450ABD5EC7BAD56CBEE6B78AFD7F317F0BB7392
E80AC9EAE8AE907AAFBB1795F04041586D27DC7D98345C3FBD4770F49FFEF11AF
00DCA98480ED0E0E3350000000049454E44AE42608200";
end
function getdbugaddbreakbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100022B01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000C049444154
484B63F84F6330022CB0769FF85F58A98A280C528B0EF05A1095BAE8FFCEBD37A
03CC200A416A40719E0B500E42A5201BA1EFA5AB076D3C5FFF6DE93C16179E4F8
5DEA5B6064DFFDFFF6DDD7501E0D7C802E396A01088C5A800148B2A073E2DEFF3
9A56BFE6FD87A99280C52DB31610F543704E0B500040E1CB9FD3F2967195118A4
161D10B4801000F9121FA0AF0520C5DA961D58BD8F0DFB45CEFE7FEFC11BA86EE
C00C50210F8F0F13BD608C48689011816501B0C750BFEFF070066B64F1FB7C689
CB0000000049454E44AE42608200";
end
function getdbugsuspendbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100022401000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000B949444154
484BED8FBB0AC2401045AD2CC4CA0FB0D0CA5E1B7F401B3F3C820A29825A98F8C
A0F988744E2C459278F6598ADB450F6C06DE6C23D4C0BBECC1F0B1EE105B2E3E1
9D934FD79AAA7B258F6E74E58882FDA807DB7EBBCA3389A90148374BAD0B16536
A38A2A03980C9E3881A8064EDB05E4214EC061D6DC024F067636A3856A062052A
56C0B0821251D01CC098041809F98361571B300982F9841A8E28B87BAE1AC2A4E
E8AAE356587C9AE67BA7244C1A7F875014001DF29EF2FFBC3E1B1000000004945
4E44AE42608200";
end
function getdbugcontinuebmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
10002E201000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000017749444154
484BAD95CB2E035118C73D835BB4112511D61E80A7B0747900AFC003D892A84E1
B246CEC24166A8145C3A60B21128BCE8CA6F4128AD665A42EF93B47BF3363B43A
9D73E697FC33E93933DFAFFDE6CB690788C5F43DB4F30A7D0A0E5B90BAB1108AE
9984916706B7DD2AA3A2E4124AEA3279A41E74A06CBA70FB4A3864B3098307E8A
F3441226C636B338BAB6E80E39DC82B82310E16D9BDD2F4AB7CD53C0A3D2B6B60
422036CDF6FDB7C0944FC4C9B9480C769DB2355688EB440A4DEB62B1CE65EA992
1B6581482866603AD9386D81097844DBCCCA3B550D5AB0AA63FEF88E2AD609443
0C44E8089ED1CD2A537AAE6A024E863DFB88B5DA367FF4F92B420ACE998DA2B22
5B75FADD0CDF827ECDC0C8BA891DFD999E6C8D6FC1C249194FB52F7ACA9BB6046
176348CB39798CAFB3FBADD825FFF0722DD6CB6973C8E8356FC119876613E1D93
BB795C946B74871C0D82DEA88EE135135B9755DA51C316F0711BDD3031775042E
1E58356D5B1051CFE2B8205F806770EAF93F6C525FA0000000049454E44AE4260
8200";
end
function getdbugsetpinbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100028401000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000011949444154
484BB5954B0AC2301086BD9E3771E3C643780B578AA2A0541405A122EE558A4F7
C811B372E4410DF1219496B8393F4B7EA0759740AF36566DA2422FE8C2248778E
62B5BDCB2795F6F2F25C9FE209287934B513B1D29E95D03B5AD9DE494630940A9
2CD835692E99E3C49C139CB68306F334025C53E56093B6454620D832B6105042A
A98ECD83D70A0854529FE8254601814A1A53BE5D8102C224713F6F5AF6FCBD124
840A095B416AA041610AE245EDECBC80BBFC4595F6534A42051310B669B9B8CFE
A845FE39846A11DA7F7B1662C8E8CE1B53FE5F300AD0E4B589FEC8D00AD0B6544
6FCCE5D58019ADC1A8438ECD0E4C53E762728023479DEC16F354F805E99B96FAE
4C9270C909FA527427A60976C8BF43880799B976B3940BD8ED0000000049454E4
4AE42608200";
end
function getdbugstepoutbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
10002ED01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000018249444154
484BCD933B4BC3601486FD0F3A3938D841872E0A0AD2C1C141271727577111A48
30E855625A09680507410844E2E2A88508428B45EF082850A2254F1822288E0CF
3872EC39C9C9E5FB92140B3EF041F39E93F7214DDB062DE67F09CCF513D8DEADD
15534220BA66677A0BD3BFB7BF2850AA5E14412C8723E86794C533DA102598E9F
E5F5C28A455B6AB4026F3923F38C714869304A81AA9C91F3B95C89523F8182B07
246EEA5330794BAF109A29633727F667E9F520797206E3923EF9B4EEF51DAC016
E09F48575EB2EA901ADD80B1892D7878FAA6D4414A16F347940A01FEAE75E57C3
39EC19102DCD7BF68EAC092CDE215258A972CF196F3E91F5E83DBBB4FDA52A315
78CBF15A66C92113AAB50FDA0E4629082A67E4AC6760152E6FDE68E22750A02B6
7E44EA26F194E2F5E69E2C6278852CEC8DDAEA401E5B3679A38B80471CA19794F
67EF1258E5479A34B00595F397D8E58C947424B2705D7DA789108C4F169B2A67A
404BB185B80561CE093340B7E3DB21CF1BDE4BFA6C502801FF275D8DB8771B6A3
0000000049454E44AE42608200";
end
function getdbugmcronextbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100025701000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000EC49444154
484BC5D5CD09C240108661EBB003CBB0801460035E723087282A117F886024A0A
0276F962558893B616565844427BB331B832F783003DF83E46047B7DCFF819BBE
EB0B5CF19B3C2B60C6FB2AD0DD474F0F21C2A7B26A81F2F8FBE383587F41561C2
B800FE27C079B62DF087102A604B6DE080B304D60E985B0015304733122024C21
8C45881830E5707A8D72102FE073FC05A81F01D478A862BC7E2702A8F111CCF04
AC706A8F1181678AD8F0550E35358E3D59E13A0C61348F1EACE0A50E32BC8F0CA
CB0A046A50194F21C70B3F2B50FE4FD8C1019FCA72BE0383E4C519BFC973024D6
B19D0FA0973865C3E24DD42ED0000000049454E44AE42608200";
end
function getdbugnextbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100025E01000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000000F349444154
484BED93CD0A015118865D835BB0B37509EEC2CE6DB8105694B29C859548766E4
0ACFC6450148A1AA349C3A7777E0E66CE9C9F290BE5A96F31DF999EA74E9D0C7D
997F400A0B5C6E77AA8D4E3458DBC1261D8EFBA0C6E44CFBABEB7DB340D1D850B
63AF3A6DCDB055B3DDA738BF2CD25F3F457B61F30A6165B86A31B813CEA28B44C
3F303E3AB1438C6A8427C7943ADBD71541C6FB4916499263BA66704521BA11911
C67E0230054232A72100B005944550EB801208AF0F698A81C24068048161D9E1C
08034025922407D200D0BD96779402801791C9817200548607CAD517DE0B55910
3AD401AFE0129BF1E207A02B9FA383F9BCBB70F0000000049454E44AE42608200
";
end
function getdbugstopbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100026602000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA864000001FB49444154
484BED94596B145114847DC8BEAF6423FBBE424296FFFF3F444386CC609C314EA
2AD498629EBEBE92B361C8982C197141C98BEC3AD3A5DA74EBFD10BE355E059FC
1F81F6D999F46B9D9E4AC7C7D2D191B4BFAF2757B6B7A7A6ABE1AAF9B9727050D
C2E237E03482F2E3A757EDE793E39E908ECEE4A9B9B7A747DDDD8D0EDD6966EB6
B755D9D9292E97F16702E90D0E0F2593696D4DAD951565CBCB6AAEAEEAA39FABE
BEBC5E5327E2F007122A77BC8E91EA2A525696E4EDFE7E775B7B0A0FAE2A2AA16
8B100B409ABC4FD6D86BAC913B9789DB53537A74DDCDCCA8313BABAACF22C402D
80171B205727B9D93BB6399B83D36A607D7FDF8B81A9393AA4D4F1797CB8805E8
984AB6D0B9BDCEC9211A1D556B6848DF5CF7C3C3AA8F8CA83631515C2E231670E
C7262068AE7A9F3825CFDFD7AEAEB53D6DBABE6C080EA16AA5A24422840CEF3AE
9D8E7CA0F86B5B1279CBE40F3D3DFAD2DDAD4F16B9B1C8F5DF08B044E49C28921
6068AE7D842E790675D5DFA6C8186AB66D18AFF8B100AB0A12C1139278AA48581
E27966323A4FE41FFC06D73EBB1A1C2C6E97110AB0FE6C284B44CE89226961A07
88E2D3FC95D573E7BEFFF2284027C5B587F36942522E74491B430503CC796BC73
FFBEF4D93BE6132014E0C3C5B785F567435922724E14490B03C5F34B774DE790B
F75031142817F89578167F1C202D20F98CF9591BE2EF7850000000049454E44AE
42608200";
end
function getdbugfreshsymsbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100027702000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000020C49444154
484BC596DD4B145118C6FBEBBA13C12B6FBAE8224C414A08BA116BD584C050171
752D02093B6442D2F84CA34B520D35CBFC036493445CAAC50776D5D9DF771DEF3
313B677766F6EBA21F3C3767E73CCF9CF39EF3CE5E42996CEF03D7C2845B7DA44
64C0203D2E7C0EE0110FB068C2F1086DE1396364DA3CE1784CB8D96D0444C0DBA
F00D189F275C699713BD74B5C342FB70C69C551B21A4D2E60BE404ECFC025A9E9
A138BD1E05440006F49436FE9E6ACAA7B16BEDB75D118010F46CB33D7EAB0EBA2
71020626A5F9F56E0B8FDF5A58DF31977A74024C2E93D8F7EAFBDEC66E2D6CC87
94E4043AF4C3E4CAA81003E7E81A7A95BFC928C08F89B80335008AD51FFADAC6A
B5C4EF7C3F181130B3666E473EF8526943DEAEBB8384E88CBC23E933F590C2287
2A1FCF80361B6F75B0D0450524031FCFF80AD9F843731C2A7787175D2E40424FE
01EF5608E131428D7D277431FDBAA51FF35FE5F34E001FD31B3D19C36CF5BF2E2
CE0E4541E63DD2E44009B7B99BAB5B6259E0F64D16EEBF50F65173E55C755046C
EC0115216F63AD8A10A1E909E1F92C612E2E8FA9D6C807C2ED4799BBF1EA7366B
5CE16E95E54AEBA5E9A1DC10948A581BA88F7A44275C75E61364E0033B592BF89
F9697A5599646104306DCFCC89BCE49B76A7AD6C36C759B5F631E60E1CDF55933
DC80970173CBBC31EDBDF84ED7D59D8644A0DE62127806163FE2BA25B6EE90017
13C9EE8D2E4822C60000000049454E44AE42608200";
end
function getdbugfreshsymbmpinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100027802000089504E470D0A1A0A0000000D4948445200000018000000180806
000000E0773DF8000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000020D49444154
484BB594DD2BA74114C7F7EF70A914529262BD5C798B645F5A2552EE5C4872837
2B1524A6D5C59C566A98D52ECC55228B4ED850B3724424A5A89B8D9B597CFBC1C
7D4F679EE691C76EC37E6AFACD3933BFF93E73E63BF382FE3309815DBB4F8BF61
B4DE8695AB7DF25FB34628151F39132A29C442B5655321A0E0B1CDAE378D1CF66
96CEE827B5EA768E87F4084F0C8505E6CC022F76BF2CF9513995A81A89C260812
F669E05F0E53E9DBA87B2A32289C260814B7BC502288B0F726DBA43A230E243C6
D7624194A5570F701FED5FDC8439701E1C0827FAC402E0AB59A6DCE8252FDCAEB
B69D9ACC9483A709AFB18D7E04847420038BBD6AA46C9A40387612E4A8BF38303
9D089C095205D046F498641F060E43497D502EFC17CE04A9020366987FDFA936D
AB17B329A24332AE0B3F3C14EF03F9C09481500AB6683AAD55B8E1B54330DEA0F
B465B669D12CD1A499A14AF5269EEB7017D499E35101704B7F68CC7CA20AF59AF
37E2B53B5BC0BF4E13C940B7DFF89F9AB800FC40EEC119DD853C910EFE8956AA1
2C55C86772FF694908F836456D7FD16F1909271670170D027E7FD3FC901961B0C
0B9BDE005BB741F271DC8F5E8F71285C102D37241AEE986930E1C5C5E542A5118
2C80370402B8893E285179542751182C80070A0268F02F76827221EED6FD3C319
4F890FD27C2B57AD524A3E1C402000F14DE907133452B765DB24F2321F0FC10DD
0144332BF870524ED00000000049454E44AE42608200";
end
function GetMainMenuBitmapInfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
@ -838,6 +1068,42 @@ DF93E618D36DCDC60B782E9F6302FFDEF6192B101E1E24272D6C2EECDD0689E08
11047474A0AC9E500391AA1457301F01FDA4F2FDFE8B101E70000000049454E44
AE42608200";
end
function getbackwardbitmapinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
100027501000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000010A49444154
5847EDD3218B84501405E0FD8B16AB60325A15C162325A0C2641D0603319AC822
641EC62B2984C8270969179CBCC70C75D771FCAC23B708A70BD1F3CEE072E8E00
088000FC5F405DD7304D13711CDFBFFC2E8701E338C2F77D4892B4F5544096655
055F56BF96980A66960DBF6D3E25300D3342108027231AB65591BE2481FF31690
E739344D2397FEB56DDBDEB71080AEEBE0380E39C8AB6F0161189203BC4B02E67
9866118E400EFEE3E4151145014851CE4D55DC02DCBB2208A22729847BF05B0F4
7D0FD775C99FB052679824C96E1FB30B6029CB12BAAE9380D7BB3E9A1F016E59D
715699A4296E56B002CC330C0F3BCEB002C55556D677B19805704400004E06200
F00985F34928814F15230000000049454E44AE42608200";
end
function getforwardbitmapinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746
10002E501000089504E470D0A1A0A0000000D4948445200000020000000200806
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
BFC6105000000097048597300000EC300000EC301C76FA8640000017A49444154
5847C5963D4BC3501486F33B440DE220520D3AA888ABAB8A28A26DA9F5A355549
42EAE4E8E8E6ECE4EFE011737870E8E82AB38EB0FB8E7B6C79EF6857EA569D2DC
9B3CE585F4DE03EF43C897C331D9A0031C8D466C8129B5C05B94C3BFE81811185
3B3BC4D79AC44C3988064870A580D8F5101C92E15B1130EE302923D3AC2EE70AC
0848F6E90413C158139064A984A9C1581590E4A98C497F9CF75A95E3649880A44
0E7A8EBC7918165B51E2BBD857E39D417A8ECA62990548A7489DA36890A488EE9
0AD52D1217909CEA6BD4A7242029D14DBA02923255D213985073E99D0157CD37C
B85C4055CF250DD2251015779AC1ABF4E121390D3FE5BFF436D9BA680DFE3B533
2B149CDEB2DE4C362EB86FFE416537D65F4672B57FD6BF50D78FD5D7F1B8CA70B
5FE81497FAC0ABCD6DE3035182B021EADF1B37EC14430C605326A951FF5137687
635460462DF1BD7EC04E388C094CAB45BED577580D8F1101B9D5CE74052BD1302
290D3C15FBE41C416D8A42C8E4681F91F06F7DA0A168403F80000000049454E44
AE42608200";
end
function getunredobitmapinfo();
begin
return "0502000000060400000074797065000203000000696D670006040000006461746

View File

@ -5,14 +5,14 @@ interface
**}
uses utslvclauxiliary,utslvclbase,utslvclgdi,uvcpropertytypespersistence,tslvcl,utslvcldcomponents;
function registereditpropertytodesigner(cls);
type TGCellRender = class(TSLUIBASE)
type TGCellRender = class(TSLUIBASE) //属性编辑器单元格对象基类
{**
@explan(说明) gridcell渲染器 %%
**}
private
FActivate;
public
function CreateEditer(AOwner);virtual;
function CreateEditer(AOwner);
begin
return createobject(self(true).classinfo(1),AOwner);
end
@ -23,23 +23,23 @@ type TGCellRender = class(TSLUIBASE)
**}
class(TSLuibase).create();
end
function CelldbClick(grid,e,d);virtual;
function CelldbClick(grid,e,d);virtual; //双击
begin
end
function CellClick(grid,e,d);virtual;
function CellClick(grid,e,d);virtual; //点击
begin
{**
@explan(说明) 格子点击 %%
**}
FActivate := true;
end
function CellDraw(grid,e,d);virtual;
function CellDraw(grid,e,d);virtual; //绘制
begin
{**
@explan(说明) 绘制格子 %%
**}
end
function CellLeave(grid);virtual;
function CellLeave(grid);virtual; //离开
begin
{**
@explan(说明) 离开编辑格子 %%
@ -49,11 +49,7 @@ type TGCellRender = class(TSLUIBASE)
property Activated read FActivate;
end
type TGridPropertyRender = class(TGCellRender)
function CreateEditer(AOwner);override;
begin
return CreateObject(self(true).Classinfo(1),AOwner);
end
type TGridPropertyRender = class(TGCellRender) //属性编辑添加owner
function Create(AOwner);
begin
inherited;
@ -61,21 +57,20 @@ type TGridPropertyRender = class(TGCellRender)
end
Owner ;
end
type TGridCellEditWithButton = class(TGridPropertyRender)
type TGridCellEditWithButton = class(TGridPropertyRender) //带按钮的单元格编辑
{**
@explan(说明) 带有按钮的格子%
**}
private
FRbuttonWidth;
FCurorList;
FRbuttonWidth; //按钮宽度
FUpRect;
FDownRect;
protected
function ptinrect(pt,rec);
function ptinrect(pt,rec);//区域中判断
begin
return (pt[0]>rec[0] and pt[0]<=rec[2]) and (pt[1]>rec[1] and pt[1]<=rec[3]);
end
function splitrect(r,rs);virtual;
function splitrect(r,rs);virtual;//拆分区域
begin
rs := array();
src := r;
@ -89,7 +84,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
rs[1] := src;
end
public
function GetPopRectByHeight(h);
function GetPopRectByHeight(h); //获得弹出区域
begin
{**
@explan(说明)根据格子获得弹出的区域 %%
@ -110,7 +105,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
end
return dn;
end
function GetPopRect(f);
function GetPopRect(f); //获得弹出区域
begin
{**
@explan(说明) 获得弹出区域%%
@ -119,7 +114,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
if f then return FUpRect;
return FDownRect;
end
function DrawButton(dc,src,d);
function DrawButton(dc,src,d);//绘制按钮
begin
{**
@explan(说明) 绘制按钮%%
@ -129,7 +124,6 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
Function Create(AOwner);override;
begin
inherited;
//echo "\r\nwitchbtn:";
ButtonWidth := 20;
end
function CellDraw(grid,e,d);override;
@ -140,7 +134,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
DrawButton(dc,rs[0],d);
CellDrawLabel(dc,rs[1],d);
end
function CellDrawLabel(dc,rect,d);override;
function CellDrawLabel(dc,rect,d);override;//绘制其他部分
begin
{**
@explan(说明) 绘制标签 %%
@ -150,7 +144,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
//dc.drawtext(self(true).EditType(),rect);
end
end
function CellClick(grid,e,d);override;
function CellClick(grid,e,d);override;//点击
begin
{**
@explan(说明) 格子点击 %%
@ -177,7 +171,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
end
end
function CelldbClick(grid,e,d);override;
function CelldbClick(grid,e,d);override;//双击处理
begin
{**
@explan(说明) 格子点击 %%
@ -200,19 +194,19 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
//LabelClick(grid,e,d);
end
end
function ButtonClick(grid,e,d);virtual;
function ButtonClick(grid,e,d);virtual;//按钮处点击
begin
{**
@explan(说明) 按钮被点击 %%
**}
end
function LabelClick(grid,e,d);virtual;
function LabelClick(grid,e,d);virtual;//非按钮处点击
begin
{**
@explan(说明)标签被点击 %%
**}
end
function CellLeave(grid);override;
function CellLeave(grid);override; //离开
begin
{**
@explan(说明) 离开编辑格子 %%
@ -224,7 +218,7 @@ type TGridCellEditWithButton = class(TGridPropertyRender)
@param(ButtonWidth)(integer) 按钮宽度 %%
**}
end
type TGCellBoolRender=class(TGCellRender)
type TGCellBoolRender=class(TGCellRender) //bool类型
class Function EditType();override;
begin
return "bool";
@ -1574,10 +1568,6 @@ type TGridCellIntegerEdit = class(TGridCellNaturalEdit)
{**
@explan(说明) 整数编辑 %%
**}
function CreateEditer(AOwner);override;
begin
return new TGridCellIntegerEdit(AOwner);
end
function EditType();override;
begin
return "integer";
@ -1612,10 +1602,6 @@ type TGridCellStringEdit = class(TGridCellNaturalEdit)
{**
@explan(说明) 整数编辑 %%
**}
function CreateEditer(AOwner);override;
begin
return new TGridCellStringEdit(AOwner);
end
function EditType();override;
begin
return "string";
@ -2430,10 +2416,6 @@ type TGridCellFileFilterEdit = class(TGridCellEditWithButton,TPropertyFileFilter
end
end
type TGridCellLazyIntegerEdit = class(TGridCellIntegerEdit)
function CreateEditer(AOwner);override;
begin
return new TGridCellLazyIntegerEdit(AOwner);
end
function EditType();override;
begin
return "lazyinteger";
@ -2448,10 +2430,6 @@ type TGridCellLazyIntegerEdit = class(TGridCellIntegerEdit)
end
end
type TGridCellLazystrEdit = class(TGridCellStringEdit) //后处理信息
function CreateEditer(AOwner);override;
begin
return new TGridCellLazystrEdit(AOwner);
end
function EditType();override;
begin
return "lazystr";

View File

@ -4,7 +4,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
@explan(说明) 可视化组件基类 %%
@date(20220505) 分离tcomponent基类
**}
private
private //基础属性
{**
@param(FOwner)(tcomponent) 所有者 %%
@param(FComponents)( TFpList ) 子项 %%
@ -12,14 +12,14 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
@param(FComponentStyle)( array of integer) 节点样式 %%
@param(FFreeNotifies)( TFpList) 销毁通知节点 %%
**}
fasdomain;
FOwner;
FName;
FComponents;
FFreeNotifies: TFpList;
FComponentState;
FComponentStyle;
FComponentCreated;
fasdomain; //名字域节点
FOwner; //所有者,在所有者销毁的时候其自动销毁
FName; //节点名,在域内不能重复
FComponents; //子节点
FFreeNotifies: TFpList; //销毁通知
FComponentState; //当前状态
FComponentStyle; //类型
FComponentCreated; //构造完成
FLoader;
function ComponentGetParent();virtual;
begin
@ -30,14 +30,14 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
end
#!begin //private methods
function GetLoader();
function GetLoader(); //获得加载器
begin
m2 := class(tUIglobalData).uigetdata("G_T_TTFM2COMPONET_");
if not m2 then return 0;
if not FLoader then FLoader := createobject(m2);
return FLoader;
end
function GetPropInfo();
function GetPropInfo(); //获得有属性
begin
o := self(true);
r := getPropInfo2(o);
@ -49,14 +49,14 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
end
return select * from ret order by["name"] end;
end
static FClassDigestB;
class function GetClassDigestB(idx,d);
static FClassDigestB; //类信息
class function GetClassDigestB(idx,d); //类信息获取
begin
if not ifarray(FClassDigestB)then FClassDigestB := array();
if ifnil(d)then return FClassDigestB[idx];
else FClassDigestB[idx]:= d;
end
function getPropInfo2(o);
function getPropInfo2(o); //获得类信息,带缓存
begin
if not(o is class(tcomponent))then return array();
t := o.classinfo;
@ -97,7 +97,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
GetClassDigestB(idx,r);
return r;
end
function GetComponent(AIndex);
function GetComponent(AIndex);//获得子项
begin
{**
@explan(说明) 获取子节点 %%
@ -105,11 +105,11 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
**}
return FComponents.geti(AIndex);
end
function SetComponentState(v);
function SetComponentState(v); //设置状态
begin
if ifarray(v)then FComponentState := v;
end
function GetComponentCount();
function GetComponentCount(); //子项数目
begin
{**
@explan(说明) 获取子节数量%%
@ -117,7 +117,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
**}
return FComponents.count();
end
function GetComponentIndex();
function GetComponentIndex();//序号
begin
{**
@explan(说明) 获取子节序号%%
@ -137,7 +137,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
FComponents.Add(AComponent);
AComponent.FOwner := Self(true);
end
procedure Remove(AComponent:TComponent);
procedure Remove(AComponent:TComponent); //移除
begin
{**
@explan(说明)移除子节点 %%
@ -149,16 +149,16 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
end
return false;
end;
procedure RemoveNotification(AComponent:TComponent);
procedure RemoveNotification(AComponent:TComponent); //是否通知
begin
r := FFreeNotifies.Remove(AComponent);
if FFreeNotifies.count()<1 then includestate(FComponentState,csFreeNotification);
return r;
end
#!end
protected
protected //名字相关
#!begin //protected methods
function SetName(v);virtual;
function SetName(v);virtual; //设置名字
begin
if ifstring(v)and length(v)>1 and v <> FName then
begin
@ -174,7 +174,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
end
end
end
Procedure SetAncestor(Value:Boolean);
Procedure SetAncestor(Value:Boolean); //设置祖先
begin
If Value then includestate(FComponentState,csAncestor)else excludestate(FCOmponentState,csAncestor);
For Runner := 0 To FComponents.Count-1 do
@ -182,7 +182,7 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
FComponents.geti(Runner).SetAncestor(Value);
end
end;
function ValidateContainer(AComponent:TComponent);virtual;
function ValidateContainer(AComponent:TComponent);virtual; //刷新容器
begin
if AComponent is class(tcomponent)then return AComponent.ValidateInsert(Self);
end
@ -190,8 +190,8 @@ uses utslvclauxiliary,UVCPropertyTypesPersistence,utslvclbase;
begin
return true;
end
public
function ExecuteCommand(cmd,p);virtual;
public //通知相关
function ExecuteCommand(cmd,p);virtual; //执行命令行
begin
end
@ -211,7 +211,7 @@ public
if ow<>ac then
ow.Notification(ac,Operation);
end
function Notification(AComponent,Operation);virtual;
function Notification(AComponent,Operation);virtual; //通知
begin
{**
@explan(说明) 通知处理 %%
@ -231,20 +231,20 @@ public
end;
end;
private
Procedure SetDesignInstance(Value);
Procedure SetDesignInstance(Value); //设置设计状态
begin
If Value then
includestate(FComponentState,csDesignInstance)
else
excludestate(FComponentState,csDesignInstance);
end;
public
procedure RemoveFreeNotification(AComponent:TComponent);
public //通知相关,设计器设置相关
procedure RemoveFreeNotification(AComponent:TComponent); //释放通知
begin
RemoveNotification(AComponent);
AComponent.RemoveNotification(self);
end;
Procedure SetDesigning(Value,SetChildren);virtual;
Procedure SetDesigning(Value,SetChildren);virtual; //设置设计状态
begin
{**
@explan(说明) 设计器使用方法,设置为设计状态,或者解除设置状态 %%
@ -282,7 +282,7 @@ protected
end
#!end
public
public //构造析构相关
#!begin //public methods
function create(AOwner);virtual;
begin
@ -302,13 +302,13 @@ public
AOwner.InsertComponent(Self);
end
end
function RootOwner();
function RootOwner(); //获得域根节点
begin
if fasdomain then return self(true);
if not(FOwner is class(TComponent))then return self(true);
return FOwner.RootOwner();
end
function FindComponentByName(n);
function FindComponentByName(n);//查找子节点中含名字的节点
begin
if n and n=FName then return self(true);
cps := Components;
@ -319,7 +319,7 @@ public
end
return false;
end
function isDescendant(cd);
function isDescendant(cd);//是否为子节点
begin
{**
@explan(说明) 判断节点是否为其子节点 %%
@ -346,7 +346,7 @@ public
AOwner.InsertComponent(self(true));
end
end
function Recycling();override;
function Recycling();override; //回收
begin
if not FComponentCreated then exit;
Destroying();
@ -361,7 +361,7 @@ public
begin
inherited;
end;
function Destroying();
function Destroying();//销毁
begin
If csDestroying in FComponentstate Then Exit;
includestate(FComponentState,csDestroying);
@ -369,7 +369,7 @@ public
data := FCOmponents.data();
for i,v in data do v.Destroying();
end;
function ExecuteAction(act:TBasicAction):Boolean;virtual;
function ExecuteAction(act:TBasicAction):Boolean;virtual;//执行action
begin
{**
@explan(说明)执行action %%
@ -381,7 +381,7 @@ public
end else
return False;
end
function UpdateAction(act:TBasicAction):Boolean;virtual;
function UpdateAction(act:TBasicAction):Boolean;virtual;//更新action
begin
{**
@explan(说明) 更新action %%
@ -393,7 +393,7 @@ public
end else
return False;
end
function DestroyComponents();
function DestroyComponents();//销毁子节点
begin
{**
@explan(说明)删除子项 %%
@ -423,7 +423,7 @@ public
end;
//function GetParentComponent(); virtual;begin end
//function HasParent(); virtual;begin end
function InsertComponent(AComponent);virtual;
function InsertComponent(AComponent);virtual;//插入
begin
{**
@explan(说明)插入节点 %%
@ -448,11 +448,11 @@ public
return ifobj(o);
end
#!end
private
private //设计器中属性事件相关
FEventsProperties;
FChangedProperties;
FVariableProperties;
function GetPublishInfo();
function GetPublishInfo();//属性获取
begin
r := publishs();
rr := array();
@ -476,12 +476,12 @@ public
r := r1;
end
end
public
function publishs();virtual;
public //设计器属性设置相关
function publishs();virtual;//释放属性
begin
//return array("currentcolor","lazyitems","range","firstdayofweek","align","mbbtnstyle","textalign","text","imagelist","canvs","images","items","bkbitmap","icon","popupmenu","mainmenu","cursor","height","width","left","top","enabled","visible","caption","color","font","onclick","rootfolder","initialdir");
end
function GetPublishproperties();virtual;
function GetPublishproperties();virtual; //获得属性信息
begin
{**
@explan(说明) 获得properties,设计器使用%%
@ -511,7 +511,7 @@ public
////////////////////
return r;
end
function GetPublishEvents();virtual;
function GetPublishEvents();virtual; //获得事件信息
begin
{**
@explan(说明) 获得event值,设计器使用 %%
@ -536,11 +536,11 @@ public
OrderPublish(r,pps);
return r;
end
function GetChangedPropertiesn(n);virtual;
function GetChangedPropertiesn(n);virtual;//获得改变的属性
begin
return FChangedProperties[n];
end
function GetChangedPublish(f);virtual;
function GetChangedPublish(f);virtual; //获得改变的属性
begin
{**
@explan(说明)获取修改过的publish,设计器使用 %%
@ -568,7 +568,7 @@ public
end
return r;
end
function SetChangedPublish(n,v);virtual;
function SetChangedPublish(n,v);virtual;//设置属性
begin
{**
@explan(说明) 设计器相关函数 %%
@ -577,7 +577,7 @@ public
//reindex(FChangedProperties,array(n:nil));
FChangedProperties[n]:= v;
end
function DeleteChangedPublish(n);virtual;
function DeleteChangedPublish(n);virtual;//删除属性
begin
if n and ifstring(n)then
begin
@ -585,7 +585,7 @@ public
reindex(FChangedProperties,array(n:nil));
end
end
function SetPublish(n,v);virtual;
function SetPublish(n,v);virtual;//设置属性
begin
{**
@explan(说明) 修改单个值,设计器使用 %%
@ -636,7 +636,7 @@ public
end
end
end
property Owner:tcomponent read FOwner;
property Owner:tcomponent read FOwner; //所有者
{**
@param(Owner)(tcomponent) 所有者 %%
@param(ComponentState)() 状态集合 %%
@ -648,8 +648,8 @@ public
property Components read FComponents;
property ComponentState read FComponentState write SetComponentState;
property ComponentStyle read FComponentStyle;
property Name:string read FName write SetName;
property Name:string read FName write SetName; //名字
property Parent read ComponentGetParent write ComponentSetParent;
property asdomain read fasdomain write fasdomain;
property Loader read GetLoader;
property asdomain read fasdomain write fasdomain; //域节点
property Loader read GetLoader; //加载器
end