added TEditButton, TFileNameEdit, TDirectoryEdit, TDateEdit, TCalcEdit from Michael V.C.

git-svn-id: trunk@4948 -
This commit is contained in:
mattias 2003-12-23 20:40:43 +00:00
parent f6e2377e96
commit 4976a7fdca
22 changed files with 2952 additions and 11 deletions

12
.gitattributes vendored
View File

@ -536,6 +536,7 @@ images/components/tbitbtn.ico -text svneol=unset#image/x-icon
images/components/tbitbtn.xpm -text svneol=native#image/x-xpixmap
images/components/tbutton.ico -text svneol=unset#image/x-icon
images/components/tbutton.xpm -text svneol=native#image/x-xpixmap
images/components/tcalcedit.xpm -text svneol=native#image/x-xpixmap
images/components/tcalendar.ico -text svneol=unset#image/x-icon
images/components/tcalendar.xpm -text svneol=native#image/x-xpixmap
images/components/tcheckbox.ico -text svneol=unset#image/x-icon
@ -548,10 +549,12 @@ images/components/tcolordialog.ico -text svneol=unset#image/x-icon
images/components/tcolordialog.xpm -text svneol=native#image/x-xpixmap
images/components/tcombobox.ico -text svneol=unset#image/x-icon
images/components/tcombobox.xpm -text svneol=native#image/x-xpixmap
images/components/tcomboedit.xpm -text svneol=native#image/x-xpixmap
images/components/tdatabase.ico -text svneol=unset#image/x-icon
images/components/tdatabase.xpm -text svneol=native#image/x-xpixmap
images/components/tdatasource.ico -text svneol=unset#image/x-icon
images/components/tdatasource.xpm -text svneol=native#image/x-xpixmap
images/components/tdateedit.xpm -text svneol=native#image/x-xpixmap
images/components/tdbcalendar.xpm -text svneol=native#image/x-xpixmap
images/components/tdbcheckbox.xpm -text svneol=native#image/x-xpixmap
images/components/tdbcombobox.xpm -text svneol=native#image/x-xpixmap
@ -562,11 +565,16 @@ images/components/tdbgroupbox.xpm -text svneol=native#image/x-xpixmap
images/components/tdbimage.xpm -text svneol=native#image/x-xpixmap
images/components/tdblistbox.xpm -text svneol=native#image/x-xpixmap
images/components/tdbmemo.xpm -text svneol=native#image/x-xpixmap
images/components/tdbnavigator.xpm -text svneol=native#image/x-xpixmap
images/components/tdbradiogroup.xpm -text svneol=native#image/x-xpixmap
images/components/tdbtext.xpm -text svneol=native#image/x-xpixmap
images/components/tdirectoryedit.xpm -text svneol=native#image/x-xpixmap
images/components/tdrawgrid.xpm -text svneol=native#image/x-xpixmap
images/components/tedit.ico -text svneol=unset#image/x-icon
images/components/tedit.xpm -text svneol=native#image/x-xpixmap
images/components/teditbutton.xpm -text svneol=native#image/x-xpixmap
images/components/tfilenamedit.xpm -text svneol=native#image/x-xpixmap
images/components/tfilenameedit.xpm -text svneol=native#image/x-xpixmap
images/components/tfontdialog.ico -text svneol=unset#image/x-icon
images/components/tfontdialog.xpm -text svneol=native#image/x-xpixmap
images/components/tgroupbox.ico -text svneol=unset#image/x-icon
@ -600,6 +608,7 @@ images/components/topenpicturedialog.xpm -text svneol=native#image/x-xpixmap
images/components/tpagecontrol.xpm -text svneol=native#image/x-xpixmap
images/components/tpaintbox.ico -text svneol=unset#image/x-icon
images/components/tpaintbox.xpm -text svneol=native#image/x-xpixmap
images/components/tpairsplitter.xpm -text svneol=native#image/x-xpixmap
images/components/tpanel.ico -text svneol=unset#image/x-icon
images/components/tpanel.xpm -text svneol=native#image/x-xpixmap
images/components/tpopupmenu.ico -text svneol=unset#image/x-icon
@ -806,7 +815,10 @@ lcl/dirsel.lrs svneol=native#text/pascal
lcl/dirsel.pas svneol=native#text/pascal
lcl/dynamicarray.pas svneol=native#text/pascal
lcl/dynhasharray.pp svneol=native#text/pascal
lcl/edbtnimg.lrs svneol=native#text/pascal
lcl/editbtn.pas svneol=native#text/pascal
lcl/extctrls.pp svneol=native#text/pascal
lcl/extdlgs.lrs svneol=native#text/pascal
lcl/extdlgs.pas svneol=native#text/pascal
lcl/extendedstrings.pas svneol=native#text/pascal
lcl/filectrl.pp svneol=native#text/pascal

View File

@ -0,0 +1,47 @@
/* XPM */
static char *tcalcedit[] = {
/* columns rows colors chars-per-pixel */
"24 24 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"oooooooooooooooooooooooo",
"o#####################oo",
"o# :oo",
"o# ::::::::::$::::::$:oo",
"o# ::::::::::$:$$$$#$:oo",
"o# ::::::::::$:$ $#$:oo",
"o# ::::::::::$:$$$$#$:oo",
"o# ::::::::::$:#####$:oo",
"o# $$$$$$$$$$$$$$$$$$:oo",
"o#::::::::::::::::::::oo",
"oooooooooooooooooooooooo",
"oooooooo@@@@@@@@@@@@@@oo",
"ooooooo@:;:;:;:;:;:;:@ o",
"ooooooo@; @@@@O o",
"ooooooo@: ::::::$@@@@O o",
"ooooooo@; $$$$$$$@@@@O o",
"ooooooo@:@@@@@@@@@@@@O o",
"ooooooo@;@ : : : : : O o",
"ooooooo@:@@@@@@@@@@@@O o",
"ooooooo@;@ : : : ::$ O o",
"ooooooo@:@@@@@@@@@@@@O o",
"ooooooo@@OOOOOOOOOOOOO o",
"oooooooo oo",
"oooooooooooooooooooooooo"
};

View File

@ -0,0 +1,44 @@
/* XPM */
static char *tcomboedit[] = {
/* columns rows colors chars-per-pixel */
"21 21 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"#####################",
"# :",
"# :::::::::$:::::::$:",
"# :::::::::$:$$$$$#$:",
"# :::::: ::$:$$$$$#$:",
"# :::::: :$:$ # $#$:",
"# :::::: : $:$$$$$#$:",
"# :::::: :: :$$$$$#$:",
"# :::::: ::: ######$:",
"# $$$$$$ :::: $$$$$$:",
"#::::::: ::::: ::::::",
"oooooooo :::::: ooooo",
"oooooooo ::::::: oooo",
"oooooooo ::::: ooo",
"oooooooo ::::: oooooo",
"oooooooo : :: oooooo",
"oooooooo oo :: ooooo",
"oooooooo ooo :: ooooo",
"ooooooooooooo :: oooo",
"ooooooooooooo :: oooo",
"oooooooooooooo ooooo"
};

View File

@ -0,0 +1,46 @@
/* XPM */
static char *tdateedit[] = {
/* columns rows colors chars-per-pixel */
"23 23 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"ooooooooooooooooooooooo",
"o#####################o",
"o# :o",
"o# ::::::::::$::::::$:o",
"o# ::::::::::$:$$$$#$:o",
"o# ::::::::::$:$ $#$:o",
"o# ::: ",
"o# ::: : =========== : ",
"o# $$$ ",
"o#::::#$$$$$$$$$$$$$$$ ",
"oooooo#$$ $ ",
"oooooo#$$:$$$$$$$$$$:$ ",
"oooooo#$$::::::::::::$ ",
"oooooo#$$:::.::....::$ ",
"oooooo#$$::..::.:::::$ ",
"oooooo#$$:::.::...$::$ ",
"oooooo#$$:::.:::::.::$ ",
"oooooo#$$:::.::$:$.::$ ",
"oooooo#$$::...:...$::$ ",
"oooooo#$$::::::::::::$ ",
"oooooo#$$ O O OO O O $ ",
"oooooo#$$$$$$$$$$$$$$$ ",
"oooooo# "
};

View File

@ -0,0 +1,103 @@
/* XPM */
static char * tdbnavigator_xpm[] = {
"23 23 77 1",
" c None",
". c #828282",
"+ c #FFFFFF",
"@ c #BFBFBF",
"# c #F8F8F8",
"$ c #EFEFEF",
"% c #F0F0F0",
"& c #030303",
"* c #C1C1C1",
"= c #BCBCBC",
"- c #BDBDBD",
"; c #C5C5C5",
"> c #9D9D9D",
", c #202020",
"' c #808080",
") c #000000",
"! c #3D3D3D",
"~ c #8D8D8D",
"{ c #F4F4F4",
"] c #C8C8C8",
"^ c #BEBEBE",
"/ c #C6C6C6",
"( c #969696",
"_ c #929292",
": c #3A3A3A",
"< c #7B7B7B",
"[ c #686868",
"} c #898989",
"| c #9C9C9C",
"1 c #848484",
"2 c #C3C3C3",
"3 c #323232",
"4 c #C0C0C0",
"5 c #6F6F6F",
"6 c #D8D8D8",
"7 c #666666",
"8 c #8C8C8C",
"9 c #CACACA",
"0 c #313131",
"a c #BBBBBB",
"b c #B0B0B0",
"c c #A0A0A0",
"d c #939393",
"e c #4A4A4A",
"f c #A9A9A9",
"g c #9A9A9A",
"h c #303030",
"i c #575757",
"j c #949494",
"k c #868686",
"l c #262626",
"m c #979797",
"n c #878787",
"o c #2F2F2F",
"p c #484848",
"q c #909090",
"r c #3C3C3C",
"s c #343434",
"t c #3F3F3F",
"u c #959595",
"v c #8F8F8F",
"w c #919191",
"x c #353535",
"y c #242424",
"z c #383838",
"A c #B8B8B8",
"B c #989898",
"C c #101010",
"D c #FEFEFE",
"E c #7C7C7C",
"F c #8B8B8B",
"G c #767676",
"H c #7A7A7A",
"I c #7F7F7F",
"J c #020202",
"K c #050505",
"L c #010101",
"................ ",
".++.++@++@++@++. ",
".@@............. ",
".++.++@++@++@++. ",
".@@.@@@@@@@@@@@. ",
".++.++@++@++@++. ",
".@@.@@@@@@@@@@@. ",
".++.++@++@++@++. ",
".@@.@@@@@@@@@@@. ",
".++.++@++@++@++. ",
"...#+$++%+++&#+$++%+++&",
" +*=-;>,*')+*!~;*@*')",
" {]^/(_:/'){]<[}]^/')",
" +=*|1234')+=5678*4')",
" #@119_0a')#@7bc7da')",
" #@efg1ha')#@ijk>la')",
" #@m!n|oa')#@p~m:da')",
" #@;qr.sa')#@tu:v;a')",
" +=*4wxy4')+=z:~=*4')",
" {]^/ABC/'){]CjA]^/')",
" +*=-;*@=')+*=-;*@=')",
" DEFG.nHI})DEFG.nHI})",
" )J)K)L))) )J)K)L))) "};

View File

@ -0,0 +1,46 @@
/* XPM */
static char *tdirectoryedit[] = {
/* columns rows colors chars-per-pixel */
"23 23 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"ooooooooooooooooooooooo",
"o#####################o",
"o# :o",
"o# ::::::::::$::::::$:o",
"o# ::::::::::$:$$$$#$:o",
"o# ::::::::::$:$ $#$:o",
"o# ::: ",
"o# ::: : =========== : ",
"o# $$$ ",
"o#::::#$$$$$$$$$$$$$$$ ",
"oooooo#$$$$ $$$$$$$$ ",
"oooooo#$$$ *** $$ ",
"oooooo#$$$ ******** $$ ",
"oooooo#$$ ******* $$ ",
"oooooo#$ *** * $$ ",
"oooooo#$ ******** * $$ ",
"oooooo#$ *** $ ",
"oooooo#$ ** ######## $ ",
"oooooo#$ * ######## $$ ",
"oooooo#$ ######## $$$ ",
"oooooo#$ $$$$ ",
"oooooo#$$$$$$$$$$$$$$$ ",
"oooooo# "
};

View File

@ -0,0 +1,162 @@
/* XPM */
static char *teditbutton[]={
"23 16 143 2",
".p c #000000",
"#o c #000103",
"#i c #000105",
"#y c #000201",
".Z c #010103",
".M c #020003",
".q c #030303",
".t c #040404",
"#C c #050503",
".r c #050505",
".s c #0a0a0a",
".o c #0b0b0b",
".n c #727272",
".# c #747474",
".d c #777777",
".m c #787878",
".h c #7a7a7a",
".j c #7b7b7b",
".b c #7c7c7c",
".c c #7d7d7d",
".e c #7e7e7e",
"#W c #7f7f7f",
".x c #808080",
".a c #818181",
".i c #858585",
".l c #868686",
".f c #878787",
".g c #888888",
"#X c #898989",
".k c #8a8a8a",
"#L c #8d8d8d",
"Qt c #929292",
".T c #aa4747",
"aa c #b5b5b5",
"a. c #b7b7b5",
"#8 c #b9b8b4",
"#h c #b9b9b9",
"#J c #bababa",
"ab c #bbbbbb",
"#6 c #bbbcb7",
".J c #bcbcbc",
"#7 c #bebebc",
".y c #bebebe",
"#4 c #bebfba",
".K c #bfbfbf",
"#n c #c0c0c0",
".I c #c1c1c1",
"#2 c #c2bfd0",
"#1 c #c2c0cb",
"#0 c #c2c1c6",
"#Y c #c2c2c0",
".L c #c2c2c2",
"#9 c #c2c3be",
"#Z c #c3c0c7",
"#3 c #c3c1ce",
"#B c #c4c4c4",
".Y c #c5c5c5",
".X c #c8c8c8",
"#5 c #c9cbc0",
"a# c #cacaca",
".8 c #eeecf9",
"#d c #f1efff",
"#w c #f1f1ff",
"#l c #f1f4ff",
"## c #f2f2ff",
"#r c #f3efff",
"#s c #f3f6ff",
"#k c #f4f3ff",
"#a c #f4f6ff",
"#q c #f4f8ff",
"#e c #f5f1ff",
"#t c #f5f2ff",
"#m c #f5f3ff",
"#b c #f5f5fd",
"#f c #f5f7ff",
"#I c #f5f8ff",
".6 c #f6f8ff",
".2 c #f6f9ff",
"#x c #f7f1ff",
"#A c #f7f6ff",
"#j c #f7fbff",
"#v c #f8f1ff",
"#g c #f8f2ff",
"aj c #f8f8f0",
"#K c #f8f8f8",
".S c #f8f8ff",
"#. c #f8fbff",
".v c #f9f9f9",
"#T c #f9fafe",
".4 c #f9faff",
"#G c #f9fbff",
"#u c #f9feff",
"al c #faf7fe",
"ac c #fafafc",
"#z c #fafaff",
".W c #fafbf3",
".5 c #fbf9ff",
".1 c #fbfaff",
".P c #fbfbfb",
"#H c #fbfcff",
"#F c #fbfdff",
".3 c #fbfeff",
"#p c #fbffff",
"ah c #fcf8ff",
"#c c #fcfbff",
".w c #fcfcfc",
"#E c #fcfcff",
".U c #fcfdff",
"#N c #fcfef9",
"#Q c #fcfefb",
"#P c #fcfefd",
"#R c #fcfff2",
"#S c #fcfff4",
"#U c #fcfff6",
".R c #fcffff",
"ag c #fdf9ff",
"ad c #fdfaff",
"af c #fdfbfc",
".E c #fdfbff",
"ae c #fdfcfa",
"#O c #fdfdfb",
"am c #fdfdfd",
".D c #fdfdff",
"#M c #fdfef9",
".C c #fdfeff",
".B c #fdfffe",
".O c #fefcfd",
".F c #fefcff",
"ai c #fefdf9",
".9 c #fefdff",
".A c #fefefe",
".G c #fefeff",
"#V c #fefff4",
"#D c #fefffb",
".V c #fefffd",
".Q c #feffff",
".N c #fffaff",
".0 c #fffbff",
".z c #fffdff",
"ak c #fffefc",
".7 c #fffeff",
".H c #fffffd",
".u c #ffffff",
"Qt.#.a.a.a.a.a.a.a.a.b.b.c.d.e.f.g.h.i.j.k.l.m",
".n.o.p.p.p.p.p.p.p.p.q.r.p.s.p.p.p.q.p.t.p.p.u",
".a.p.u.u.u.u.u.u.u.u.u.v.u.w.u.x.x.x.x.x.x.y.u",
".a.p.z.z.A.A.A.B.C.D.E.F.G.v.H.x.I.J.I.K.x.L.u",
".e.M.N.z.O.P.Q.R.R.S.T.T.U.V.W.x.X.y.I.K.x.Y.u",
".e.Z.z.0.z.1.U.2.3.4.T.T.5.6.H.x.J.I.I.K.x.Y.u",
".e.Z.7.8.9.T.T.T#.##.T.T.T.T#a.x.K.Y.I.K.x.Y.u",
".e.Z#b.U#c#d#e.T.T#f.T.T#g.T.u.x.K#h.I.K.x.Y.u",
".e#i.R#j#k.T.T.T.T#l.T.T#m.T.u.x.J#n.I.K.x.Y.u",
".e#o#p#q.T.T#r.T.T#s.T.T#t.T.u.x.K.y.I.K.x.Y.u",
".e#o.3#u.T.T#v.T.T#w.T.T#x.T.u.x.J#n.I.K.x.Y.u",
".e#y.R#j#z.T.T.T.T.S.T.T.T.T#A.x.X#B.I.K.x.Y.u",
".##C#D.R.R.U#E#F#p#p#G#H#F#I.R.x.I#J.I.K.x.Y#K",
"#L.p#M#N#O#P.U#Q#R#S.Q#T#D#U#V.x.b#W.g.c#X.J.u",
".k.p#Y.L#Z#0#Y#Y#0#1#2#3#4#5#6#7#8#9a.a#aaab.u",
".bacadadad.Eaeafadagahadaiajak.7.zal.u.u.u.uam"};

View File

@ -0,0 +1,46 @@
/* XPM */
static char *tfilenamedit[] = {
/* columns rows colors chars-per-pixel */
"23 23 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"ooooooooooooooooooooooo",
"o#####################o",
"o# :o",
"o# ::::::::::$::::::$:o",
"o# ::::::::::$:$$$$#$:o",
"o# ::::::::::$:$ $#$:o",
"o# ::: ",
"o# ::: : =========== : ",
"o# $$$ ",
"o#::::#$$$$$$$$$$$$$$$ ",
"oooooo#$$$$$$$$ $$$$ ",
"oooooo#$$$$$$$ $$$ $ $ ",
"oooooo#$$$$$$$$$$$$ $ ",
"oooooo#$$ $$$$$$ $ ",
"oooooo#$ ::: $$$$ ",
"oooooo#$ :::::::: $$$$ ",
"oooooo#$ ::: $ ",
"oooooo#$ :: ######## $ ",
"oooooo#$ : ######## $$ ",
"oooooo#$ ######## $$$ ",
"oooooo#$ $$$$ ",
"oooooo#$$$$$$$$$$$$$$$ ",
"oooooo# "
};

View File

@ -0,0 +1,46 @@
/* XPM */
static char *tfilenamedit[] = {
/* columns rows colors chars-per-pixel */
"23 23 17 1",
" c black",
". c #800000",
"X c #008000",
"o c None",
"O c navy",
"+ c #800080",
"@ c #008080",
"# c #808080",
"$ c #C0C0C0",
"% c red",
"& c green",
"* c yellow",
"= c blue",
"- c magenta",
"; c cyan",
": c gray100",
"> c None",
/* pixels */
"ooooooooooooooooooooooo",
"o#####################o",
"o# :o",
"o# ::::::::::$::::::$:o",
"o# ::::::::::$:$$$$#$:o",
"o# ::::::::::$:$ $#$:o",
"o# ::: ",
"o# ::: : =========== : ",
"o# $$$ ",
"o#::::#$$$$$$$$$$$$$$$ ",
"oooooo#$$$$$$$$ $$$$ ",
"oooooo#$$$$$$$ $$$ $ $ ",
"oooooo#$$$$$$$$$$$$ $ ",
"oooooo#$$ $$$$$$ $ ",
"oooooo#$ ::: $$$$ ",
"oooooo#$ :::::::: $$$$ ",
"oooooo#$ ::: $ ",
"oooooo#$ :: ######## $ ",
"oooooo#$ : ######## $$ ",
"oooooo#$ ######## $$$ ",
"oooooo#$ $$$$ ",
"oooooo#$$$$$$$$$$$$$$$ ",
"oooooo# "
};

View File

@ -0,0 +1,32 @@
/* XPM */
static char * tpairsplitter_xpm[] = {
"22 22 7 1",
" c None",
". c #E2E2E2",
"+ c #B7B7B7",
"@ c #636363",
"# c #F90000",
"$ c #D30000",
"% c #930000",
" ",
" ",
" ..... ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" # .+++@ # ",
" #$ .+++@ #$ ",
" #$$$$$$$$$$$$ ",
" #$$$$$$$$$$$$$% ",
" $$%%%%%%%%$$% ",
" $% .+++@ $% ",
" % .+++@ % ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" .+++@ ",
" @@@@@ ",
" "};

View File

@ -126,6 +126,24 @@ LazarusResources.Add('tbutton','XPM',[
+'^/;(6/7|*~1:&;!~",'#10'"+&*=-&;*]8<^90)&;!~",'#10'"abcdefghhhhhhhhijk~",'#10
+'"~2~|~(~~~~~~~~~~2~ "};'#10
]);
LazarusResources.Add('tcalcedit','XPM',[
'/* XPM */'#10'static char *tcalcedit[] = {'#10'/* columns rows colors chars-'
+'per-pixel */'#10'"24 24 17 1",'#10'" c black",'#10'". c #800000",'#10'"X c'
+' #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #008'
+'080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c green",'
+#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10'": '
+'c gray100",'#10'"> c None",'#10'/* pixels */'#10'"oooooooooooooooooooooooo"'
+','#10'"o#####################oo",'#10'"o# :oo",'#10'"o# :'
+':::::::::$::::::$:oo",'#10'"o# ::::::::::$:$$$$#$:oo",'#10'"o# ::::::::::$:'
+'$ $#$:oo",'#10'"o# ::::::::::$:$$$$#$:oo",'#10'"o# ::::::::::$:#####$:oo",'
+#10'"o# $$$$$$$$$$$$$$$$$$:oo",'#10'"o#::::::::::::::::::::oo",'#10'"ooooooo'
+'ooooooooooooooooo",'#10'"oooooooo@@@@@@@@@@@@@@oo",'#10'"ooooooo@:;:;:;:;:;'
+':;:@ o",'#10'"ooooooo@; @@@@O o",'#10'"ooooooo@: ::::::$@@@@O o",'#10
+'"ooooooo@; $$$$$$$@@@@O o",'#10'"ooooooo@:@@@@@@@@@@@@O o",'#10'"ooooooo@;@'
+' : : : : : O o",'#10'"ooooooo@:@@@@@@@@@@@@O o",'#10'"ooooooo@;@ : : : ::$ '
+'O o",'#10'"ooooooo@:@@@@@@@@@@@@O o",'#10'"ooooooo@@OOOOOOOOOOOOO o",'#10'"'
+'oooooooo oo",'#10'"oooooooooooooooooooooooo"'#10'};'#10
]);
LazarusResources.Add('tcalendar','XPM',[
'/* XPM */'#10'static char *tcalendar[]={'#10'"20 19 53 1",'#10'"k c #000000"'
+','#10'"A c #000004",'#10'"a c #000005",'#10'"M c #000007",'#10'"X c #000009'
@ -369,6 +387,22 @@ LazarusResources.Add('tcombobox','XPM',[
+'" B H K j.k.l.m.n.o.p.q.p.r.s. .t.u.v.",'#10'" a 4.b.I K w.x.g f f y.'
+'y.z.4.A.M H B.",'#10'" @ C.B 8 D.E.F.G.D 8 { { 8 8 H.G.I.D "};'#10
]);
LazarusResources.Add('tcomboedit','XPM',[
'/* XPM */'#10'static char *tcomboedit[] = {'#10'/* columns rows colors chars'
+'-per-pixel */'#10'"21 21 17 1",'#10'" c black",'#10'". c #800000",'#10'"X '
+'c #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #00'
+'8080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c green"'
+','#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10
+'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'"#####################"'
+','#10'"# :",'#10'"# :::::::::$:::::::$:",'#10'"# ::::::::'
+':$:$$$$$#$:",'#10'"# :::::: ::$:$$$$$#$:",'#10'"# :::::: :$:$ # $#$:",'#10
+'"# :::::: : $:$$$$$#$:",'#10'"# :::::: :: :$$$$$#$:",'#10'"# :::::: ::: ###'
+'###$:",'#10'"# $$$$$$ :::: $$$$$$:",'#10'"#::::::: ::::: ::::::",'#10'"oooo'
+'oooo :::::: ooooo",'#10'"oooooooo ::::::: oooo",'#10'"oooooooo ::::: ooo'
+'",'#10'"oooooooo ::::: oooooo",'#10'"oooooooo : :: oooooo",'#10'"oooooooo '
+' oo :: ooooo",'#10'"oooooooo ooo :: ooooo",'#10'"ooooooooooooo :: oooo",'#10
+'"ooooooooooooo :: oooo",'#10'"oooooooooooooo ooooo"'#10'};'#10
]);
LazarusResources.Add('tdatabase','XPM',[
'/* XPM */'#10'static char * tdatabase_xpm[] = {'#10'"20 17 218 2",'#10'" '#9
+'c None",'#10'". '#9'c #010000",'#10'"+ '#9'c #040301",'#10'"@ '#9'c #060405'
@ -497,6 +531,24 @@ LazarusResources.Add('tdatasource','XPM',[
+' e e e ",'#10'" e '
+' "};'#10
]);
LazarusResources.Add('tdateedit','XPM',[
'/* XPM */'#10'static char *tdateedit[] = {'#10'/* columns rows colors chars-'
+'per-pixel */'#10'"23 23 17 1",'#10'" c black",'#10'". c #800000",'#10'"X c'
+' #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #008'
+'080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c green",'
+#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10'": '
+'c gray100",'#10'"> c None",'#10'/* pixels */'#10'"ooooooooooooooooooooooo",'
+#10'"o#####################o",'#10'"o# :o",'#10'"o# ::::::'
+'::::$::::::$:o",'#10'"o# ::::::::::$:$$$$#$:o",'#10'"o# ::::::::::$:$ $#$:'
+'o",'#10'"o# ::: ",'#10'"o# ::: : =========== : ",'#10'"o# $'
+'$$ ",'#10'"o#::::#$$$$$$$$$$$$$$$ ",'#10'"oooooo#$$ '
+' $ ",'#10'"oooooo#$$:$$$$$$$$$$:$ ",'#10'"oooooo#$$::::::::::::$ ",'#10
+'"oooooo#$$:::.::....::$ ",'#10'"oooooo#$$::..::.:::::$ ",'#10'"oooooo#$$:::'
+'.::...$::$ ",'#10'"oooooo#$$:::.:::::.::$ ",'#10'"oooooo#$$:::.::$:$.::$ ",'
+#10'"oooooo#$$::...:...$::$ ",'#10'"oooooo#$$::::::::::::$ ",'#10'"oooooo#$$'
+' O O OO O O $ ",'#10'"oooooo#$$$$$$$$$$$$$$$ ",'#10'"oooooo# '
+' "'#10'};'#10
]);
LazarusResources.Add('tdbcalendar','XPM',[
'/* XPM */'#10'static char * tdbcalendar_xpm[] = {'#10'"23 23 47 1",'#10'" '#9
+'c None",'#10'".'#9'c #828282",'#10'"+'#9'c #FFFFFF",'#10'"@'#9'c #BFBFBF",'
@ -952,6 +1004,24 @@ LazarusResources.Add('tdbtext','XPM',[
+','#10'" ^{# #)# ",'#10'" ##/ ;#%. ",'#10'" '
+' $$## #(##_"};'#10
]);
LazarusResources.Add('tdirectoryedit','XPM',[
'/* XPM */'#10'static char *tdirectoryedit[] = {'#10'/* columns rows colors c'
+'hars-per-pixel */'#10'"23 23 17 1",'#10'" c black",'#10'". c #800000",'#10
+'"X c #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c '
+'#008080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c gre'
+'en",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'
+#10'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'"ooooooooooooooooooo'
+'oooo",'#10'"o#####################o",'#10'"o# :o",'#10'"o'
+'# ::::::::::$::::::$:o",'#10'"o# ::::::::::$:$$$$#$:o",'#10'"o# ::::::::::$'
+':$ $#$:o",'#10'"o# ::: ",'#10'"o# ::: : =========== : ",'
+#10'"o# $$$ ",'#10'"o#::::#$$$$$$$$$$$$$$$ ",'#10'"oooooo#$$'
+'$$ $$$$$$$$ ",'#10'"oooooo#$$$ *** $$ ",'#10'"oooooo#$$$ ******** $$'
+' ",'#10'"oooooo#$$ ******* $$ ",'#10'"oooooo#$ *** * $$ ",'#10'"oooo'
+'oo#$ ******** * $$ ",'#10'"oooooo#$ *** $ ",'#10'"oooooo#$ ** #####'
+'### $ ",'#10'"oooooo#$ * ######## $$ ",'#10'"oooooo#$ ######## $$$ ",'#10
+'"oooooo#$ $$$$ ",'#10'"oooooo#$$$$$$$$$$$$$$$ ",'#10'"oooooo# '
+' "'#10'};'#10
]);
LazarusResources.Add('tdrawgrid','XPM',[
'/* XPM */'#10'static char * tdrawgrid_xpm[] = {'#10'"23 23 6 1",'#10'" '#9'c'
+' None",'#10'".'#9'c #000000",'#10'"+'#9'c #C0C0C0",'#10'"@'#9'c #FFFFFF",'
@ -967,6 +1037,59 @@ LazarusResources.Add('tdrawgrid','XPM',[
+'.$$$$. .+@+@. ",'#10'" .$$$$. ...... ",'#10'" .... '
+' "};'#10
]);
LazarusResources.Add('teditbutton','XPM',[
'/* XPM */'#10'static char *teditbutton[]={'#10'"23 16 143 2",'#10'".p c #000'
+'000",'#10'"#o c #000103",'#10'"#i c #000105",'#10'"#y c #000201",'#10'".Z c'
+' #010103",'#10'".M c #020003",'#10'".q c #030303",'#10'".t c #040404",'#10
+'"#C c #050503",'#10'".r c #050505",'#10'".s c #0a0a0a",'#10'".o c #0b0b0b",'
+#10'".n c #727272",'#10'".# c #747474",'#10'".d c #777777",'#10'".m c #78787'
+'8",'#10'".h c #7a7a7a",'#10'".j c #7b7b7b",'#10'".b c #7c7c7c",'#10'".c c #'
+'7d7d7d",'#10'".e c #7e7e7e",'#10'"#W c #7f7f7f",'#10'".x c #808080",'#10'".'
+'a c #818181",'#10'".i c #858585",'#10'".l c #868686",'#10'".f c #878787",'
+#10'".g c #888888",'#10'"#X c #898989",'#10'".k c #8a8a8a",'#10'"#L c #8d8d8'
+'d",'#10'"Qt c #929292",'#10'".T c #aa4747",'#10'"aa c #b5b5b5",'#10'"a. c #'
+'b7b7b5",'#10'"#8 c #b9b8b4",'#10'"#h c #b9b9b9",'#10'"#J c #bababa",'#10'"a'
+'b c #bbbbbb",'#10'"#6 c #bbbcb7",'#10'".J c #bcbcbc",'#10'"#7 c #bebebc",'
+#10'".y c #bebebe",'#10'"#4 c #bebfba",'#10'".K c #bfbfbf",'#10'"#n c #c0c0c'
+'0",'#10'".I c #c1c1c1",'#10'"#2 c #c2bfd0",'#10'"#1 c #c2c0cb",'#10'"#0 c #'
+'c2c1c6",'#10'"#Y c #c2c2c0",'#10'".L c #c2c2c2",'#10'"#9 c #c2c3be",'#10'"#'
+'Z c #c3c0c7",'#10'"#3 c #c3c1ce",'#10'"#B c #c4c4c4",'#10'".Y c #c5c5c5",'
+#10'".X c #c8c8c8",'#10'"#5 c #c9cbc0",'#10'"a# c #cacaca",'#10'".8 c #eeecf'
+'9",'#10'"#d c #f1efff",'#10'"#w c #f1f1ff",'#10'"#l c #f1f4ff",'#10'"## c #'
+'f2f2ff",'#10'"#r c #f3efff",'#10'"#s c #f3f6ff",'#10'"#k c #f4f3ff",'#10'"#'
+'a c #f4f6ff",'#10'"#q c #f4f8ff",'#10'"#e c #f5f1ff",'#10'"#t c #f5f2ff",'
+#10'"#m c #f5f3ff",'#10'"#b c #f5f5fd",'#10'"#f c #f5f7ff",'#10'"#I c #f5f8f'
+'f",'#10'".6 c #f6f8ff",'#10'".2 c #f6f9ff",'#10'"#x c #f7f1ff",'#10'"#A c #'
+'f7f6ff",'#10'"#j c #f7fbff",'#10'"#v c #f8f1ff",'#10'"#g c #f8f2ff",'#10'"a'
+'j c #f8f8f0",'#10'"#K c #f8f8f8",'#10'".S c #f8f8ff",'#10'"#. c #f8fbff",'
+#10'".v c #f9f9f9",'#10'"#T c #f9fafe",'#10'".4 c #f9faff",'#10'"#G c #f9fbf'
+'f",'#10'"#u c #f9feff",'#10'"al c #faf7fe",'#10'"ac c #fafafc",'#10'"#z c #'
+'fafaff",'#10'".W c #fafbf3",'#10'".5 c #fbf9ff",'#10'".1 c #fbfaff",'#10'".'
+'P c #fbfbfb",'#10'"#H c #fbfcff",'#10'"#F c #fbfdff",'#10'".3 c #fbfeff",'
+#10'"#p c #fbffff",'#10'"ah c #fcf8ff",'#10'"#c c #fcfbff",'#10'".w c #fcfcf'
+'c",'#10'"#E c #fcfcff",'#10'".U c #fcfdff",'#10'"#N c #fcfef9",'#10'"#Q c #'
+'fcfefb",'#10'"#P c #fcfefd",'#10'"#R c #fcfff2",'#10'"#S c #fcfff4",'#10'"#'
+'U c #fcfff6",'#10'".R c #fcffff",'#10'"ag c #fdf9ff",'#10'"ad c #fdfaff",'
+#10'"af c #fdfbfc",'#10'".E c #fdfbff",'#10'"ae c #fdfcfa",'#10'"#O c #fdfdf'
+'b",'#10'"am c #fdfdfd",'#10'".D c #fdfdff",'#10'"#M c #fdfef9",'#10'".C c #'
+'fdfeff",'#10'".B c #fdfffe",'#10'".O c #fefcfd",'#10'".F c #fefcff",'#10'"a'
+'i c #fefdf9",'#10'".9 c #fefdff",'#10'".A c #fefefe",'#10'".G c #fefeff",'
+#10'"#V c #fefff4",'#10'"#D c #fefffb",'#10'".V c #fefffd",'#10'".Q c #fefff'
+'f",'#10'".N c #fffaff",'#10'".0 c #fffbff",'#10'".z c #fffdff",'#10'"ak c #'
+'fffefc",'#10'".7 c #fffeff",'#10'".H c #fffffd",'#10'".u c #ffffff",'#10'"Q'
+'t.#.a.a.a.a.a.a.a.a.b.b.c.d.e.f.g.h.i.j.k.l.m",'#10'".n.o.p.p.p.p.p.p.p.p.q'
+'.r.p.s.p.p.p.q.p.t.p.p.u",'#10'".a.p.u.u.u.u.u.u.u.u.u.v.u.w.u.x.x.x.x.x.x.'
+'y.u",'#10'".a.p.z.z.A.A.A.B.C.D.E.F.G.v.H.x.I.J.I.K.x.L.u",'#10'".e.M.N.z.O'
+'.P.Q.R.R.S.T.T.U.V.W.x.X.y.I.K.x.Y.u",'#10'".e.Z.z.0.z.1.U.2.3.4.T.T.5.6.H.'
+'x.J.I.I.K.x.Y.u",'#10'".e.Z.7.8.9.T.T.T#.##.T.T.T.T#a.x.K.Y.I.K.x.Y.u",'#10
+'".e.Z#b.U#c#d#e.T.T#f.T.T#g.T.u.x.K#h.I.K.x.Y.u",'#10'".e#i.R#j#k.T.T.T.T#l'
+'.T.T#m.T.u.x.J#n.I.K.x.Y.u",'#10'".e#o#p#q.T.T#r.T.T#s.T.T#t.T.u.x.K.y.I.K.'
+'x.Y.u",'#10'".e#o.3#u.T.T#v.T.T#w.T.T#x.T.u.x.J#n.I.K.x.Y.u",'#10'".e#y.R#j'
+'#z.T.T.T.T.S.T.T.T.T#A.x.X#B.I.K.x.Y.u",'#10'".##C#D.R.R.U#E#F#p#p#G#H#F#I.'
+'R.x.I#J.I.K.x.Y#K",'#10'"#L.p#M#N#O#P.U#Q#R#S.Q#T#D#U#V.x.b#W.g.c#X.J.u",'
+#10'".k.p#Y.L#Z#0#Y#Y#0#1#2#3#4#5#6#7#8#9a.a#aaab.u",'#10'".bacadadad.Eaeafa'
+'dagahadaiajak.7.zal.u.u.u.uam"};'#10
]);
LazarusResources.Add('tedit','XPM',[
'/* XPM */'#10'static char * tedit_xpm[] = {'#10'"23 16 157 2",'#10'" '#9'c '
+'None",'#10'". '#9'c #929292",'#10'"+ '#9'c #747474",'#10'"@ '#9'c #818181",'
@ -1030,6 +1153,42 @@ LazarusResources.Add('tedit','XPM',[
+'e.f.g.h.i.j.k.l.m.n.o.p._ ",'#10'"# q.r.r.r.5 s.t.r.u.v.r.w.x.y.0 | z._ _ _'
+' _ [ "};'#10
]);
LazarusResources.Add('tfilenamedit','XPM',[
'/* XPM */'#10'static char *tfilenamedit[] = {'#10'/* columns rows colors cha'
+'rs-per-pixel */'#10'"23 23 17 1",'#10'" c black",'#10'". c #800000",'#10'"'
+'X c #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #'
+'008080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c gree'
+'n",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10
+'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'"oooooooooooooooooooooo'
+'o",'#10'"o#####################o",'#10'"o# :o",'#10'"o# :'
+':::::::::$::::::$:o",'#10'"o# ::::::::::$:$$$$#$:o",'#10'"o# ::::::::::$:$ '
+' $#$:o",'#10'"o# ::: ",'#10'"o# ::: : =========== : ",'#10
+'"o# $$$ ",'#10'"o#::::#$$$$$$$$$$$$$$$ ",'#10'"oooooo#$$$$$'
+'$$$ $$$$ ",'#10'"oooooo#$$$$$$$ $$$ $ $ ",'#10'"oooooo#$$$$$$$$$$$$ $ ",'
+#10'"oooooo#$$ $$$$$$ $ ",'#10'"oooooo#$ ::: $$$$ ",'#10'"oooooo#$ '
+':::::::: $$$$ ",'#10'"oooooo#$ ::: $ ",'#10'"oooooo#$ :: ######## $'
+' ",'#10'"oooooo#$ : ######## $$ ",'#10'"oooooo#$ ######## $$$ ",'#10'"oooo'
+'oo#$ $$$$ ",'#10'"oooooo#$$$$$$$$$$$$$$$ ",'#10'"oooooo# '
+' "'#10'};'#10
]);
LazarusResources.Add('tfilenameedit','XPM',[
'/* XPM */'#10'static char *tfilenamedit[] = {'#10'/* columns rows colors cha'
+'rs-per-pixel */'#10'"23 23 17 1",'#10'" c black",'#10'". c #800000",'#10'"'
+'X c #008000",'#10'"o c None",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #'
+'008080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c gree'
+'n",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10
+'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'"oooooooooooooooooooooo'
+'o",'#10'"o#####################o",'#10'"o# :o",'#10'"o# :'
+':::::::::$::::::$:o",'#10'"o# ::::::::::$:$$$$#$:o",'#10'"o# ::::::::::$:$ '
+' $#$:o",'#10'"o# ::: ",'#10'"o# ::: : =========== : ",'#10
+'"o# $$$ ",'#10'"o#::::#$$$$$$$$$$$$$$$ ",'#10'"oooooo#$$$$$'
+'$$$ $$$$ ",'#10'"oooooo#$$$$$$$ $$$ $ $ ",'#10'"oooooo#$$$$$$$$$$$$ $ ",'
+#10'"oooooo#$$ $$$$$$ $ ",'#10'"oooooo#$ ::: $$$$ ",'#10'"oooooo#$ '
+':::::::: $$$$ ",'#10'"oooooo#$ ::: $ ",'#10'"oooooo#$ :: ######## $'
+' ",'#10'"oooooo#$ : ######## $$ ",'#10'"oooooo#$ ######## $$$ ",'#10'"oooo'
+'oo#$ $$$$ ",'#10'"oooooo#$$$$$$$$$$$$$$$ ",'#10'"oooooo# '
+' "'#10'};'#10
]);
LazarusResources.Add('tfontdialog','XPM',[
'/* XPM */'#10'static char * tfontdialog_xpm[] = {'#10'"22 20 10 1",'#10'" '#9
+'c None",'#10'".'#9'c #848484",'#10'"+'#9'c #FFFFFF",'#10'"@'#9'c #000000",'

View File

@ -1,5 +1,5 @@
#
# Don't edit, this file is generated by FPCMake Version 1.1 [2003/12/19]
# Don't edit, this file is generated by FPCMake Version 1.1 [2003/12/21]
#
default: all
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
@ -254,7 +254,7 @@ endif
endif
override TARGET_DIRS+=interfaces
override TARGET_UNITS+=alllclunits
override TARGET_IMPLICITUNITS+=actnlist arrow avglcltree buttons calendar checklst clipbrd clistbox comctrls commctrl controls dbctrls dbgrids dialogs dirsel dynamicarray dynhasharray extctrls extdlgs extendedstrings filectrl forms graphics graphmath graphtype grids imglist interfacebase lazlinkedlist lclintf lclproc lclmemmanager lclstrconsts lcltype lmessages lresources maskedit menus pairsplitter postscriptprinter printers spin stdctrls stringhashlist textstrings toolwin utrace vclglobals
override TARGET_IMPLICITUNITS+=actnlist arrow avglcltree buttons calendar checklst clipbrd clistbox comctrls commctrl controls dbctrls dbgrids dialogs dirsel dynamicarray dynhasharray editbtn extctrls extdlgs extendedstrings filectrl forms graphics graphmath graphtype grids imglist interfacebase lazlinkedlist lclintf lclproc lclmemmanager lclstrconsts lcltype lmessages lresources maskedit menus pairsplitter postscriptprinter printers spin stdctrls stringhashlist textstrings toolwin utrace vclglobals
override TARGET_RSTS+=lclstrconsts
override CLEAN_FILES+=$(wildcard $(COMPILER_UNITTARGETDIR)/*$(OEXT)) $(wildcard $(COMPILER_UNITTARGETDIR)/*$(PPUEXT)) $(wildcard $(COMPILER_UNITTARGETDIR)/*$(RSTEXT)) $(wildcard ./units/*$(OEXT)) $(wildcard ./units/*$(PPUEXT)) $(wildcard ./units/*$(RSTEXT)) $(wildcard *$(OEXT)) $(wildcard *$(PPUEXT)) $(wildcard *$(RSTEXT))
override INSTALL_BUILDUNIT=alllclunits

View File

@ -28,6 +28,7 @@ implicitunits= \
dirsel \
dynamicarray \
dynhasharray \
editbtn \
extctrls \
extdlgs \
extendedstrings \

View File

@ -39,7 +39,7 @@ uses
Comctrls, Graphics, StdCtrls, Arrow, Controls, ImgList, Menus, Toolwin,
Dialogs, Messages, Clistbox, ActnList, Grids, MaskEdit,
Printers, PostScriptPrinter, CheckLst, PairSplitter, DirSel, ExtDlgs,
DBCtrls, DBGrids;
DBCtrls, DBGrids, EditBtn;
implementation
@ -48,6 +48,9 @@ end.
{ =============================================================================
$Log$
Revision 1.5 2003/12/23 20:40:43 mattias
added TEditButton, TFileNameEdit, TDirectoryEdit, TDateEdit, TCalcEdit from Michael V.C.
Revision 1.4 2003/12/07 09:07:22 mattias
fixed ambigious units registry and forms

View File

@ -91,7 +91,7 @@ type
property Handle : integer read FHandle write SetHandle;
property Title : string read FTitle write FTitle;
property UserChoice : integer read FUserChoice write FUserChoice;
procedure Close;
procedure Close; virtual;
procedure DoShow; virtual;
procedure DoClose; virtual;
function HandleAllocated: boolean;
@ -423,6 +423,9 @@ end.
{ =============================================================================
$Log$
Revision 1.39 2003/12/23 20:40:43 mattias
added TEditButton, TFileNameEdit, TDirectoryEdit, TDateEdit, TCalcEdit from Michael V.C.
Revision 1.38 2003/10/15 20:33:36 ajgenius
add csForm, start fixing Style matching for syscolors and fonts

79
lcl/edbtnimg.lrs Normal file
View File

@ -0,0 +1,79 @@
LazarusResources.Add('btncalculator','XPM',[
'/* XPM */'#10'static char *calculator[] = {'#10'/* columns rows colors chars'
+'-per-pixel */'#10'"14 12 17 1",'#10'" c black",'#10'". c #800000",'#10'"X '
+'c #008000",'#10'"o c #808000",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c '
+'#008080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c gre'
+'en",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'
+#10'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'">@@@@@@@@@@@@>",'#10
+'"@:;:;:;:;:;:@ ",'#10'"@; @@O ",'#10'"@: ::::::$@@O ",'#10'"@; $$$$$'
+'$$@@O ",'#10'"@:@@@@@@@@@@O ",'#10'"@;@ : : : : O ",'#10'"@:@@@@@@@@@@O ",'
+#10'"@;@ : : : : O ",'#10'"@:@@@@@@@@@@O ",'#10'"@@OOOOOOOOOOO ",'#10'"> '
+' >"'#10'};'#10
]);
LazarusResources.Add('btncalendar','XPM',[
'/* XPM */'#10'static char *calendar[] = {'#10'/* columns rows colors chars-p'
+'er-pixel */'#10'"14 12 17 1",'#10'" c black",'#10'". c #800000",'#10'"X c '
+'#008000",'#10'"o c #808000",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #0'
+'08080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c green'
+'",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10
+'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'">> >>",'#10'"'
+'>>:$$$$$$$$:O#",'#10'">>::::::::::O#",'#10'">>:: :: :O#",'#10'">>: :: :'
+':::O#",'#10'">>:: :: $:O#",'#10'">>:: ::::: :O#",'#10'">>:: ::$:$ :O#",'
+#10'">>: : $:O#",'#10'">>::::::::::O#",'#10'">> O OO O O#",'#10'">>>##'
+'#########"'#10'};'#10
]);
LazarusResources.Add('btnseldir','XPM',[
'/* XPM */'#10'static char *directory[] = {'#10'/* columns rows colors chars-'
+'per-pixel */'#10'"14 12 17 1",'#10'" c black",'#10'". c #800000",'#10'"X c'
+' #008000",'#10'"o c #808000",'#10'"O c navy",'#10'"+ c #800080",'#10'"@ c #'
+'008080",'#10'"# c #808080",'#10'"$ c #C0C0C0",'#10'"% c red",'#10'"& c gree'
+'n",'#10'"* c yellow",'#10'"= c blue",'#10'"- c magenta",'#10'"; c cyan",'#10
+'": c gray100",'#10'"> c None",'#10'/* pixels */'#10'">>> >>>>>>>",'#10'"'
+'>> *:*: >>>>>>",'#10'"> >",'#10'"> :*:*:*:*:* >",'#10'"> *:*O*O*'
+'O*: >",'#10'"> :*:*OOO*:* >",'#10'"> *:*OO*OO*: >",'#10'"> :*:*OOO*:* >",'
+#10'"> *:*O*O*O*: >",'#10'"> :*:*:*:*:* >",'#10'"> >",'#10'">>>>>'
+'>>>>>>>>>"'#10'};'#10
]);
LazarusResources.Add('btnselfile','XPM',[
'/* XPM */'#10'static char * btn_openfile_xpm[] = {'#10'"18 18 97 2",'#10'" '
+#9'c None",'#10'". '#9'c #000000",'#10'"+ '#9'c #4E331B",'#10'"@ '#9'c #E5A5'
+'66",'#10'"# '#9'c #FED39A",'#10'"$ '#9'c #FEC585",'#10'"% '#9'c #FDC587",'
+#10'"& '#9'c #FEC282",'#10'"* '#9'c #F8AC62",'#10'"= '#9'c #FEC88A",'#10'"- '
+#9'c #53504D",'#10'"; '#9'c #55524F",'#10'"> '#9'c #5C5A57",'#10'", '#9'c #5'
+'4514E",'#10'"'' '#9'c #565350",'#10'") '#9'c #C4864E",'#10'"! '#9'c #524F4C'
+'",'#10'"~ '#9'c #F5F5F5",'#10'"{ '#9'c #ECECEC",'#10'"] '#9'c #E4E4E4",'#10
+'"^ '#9'c #DCDCDC",'#10'"/ '#9'c #D4D4D4",'#10'"( '#9'c #CBCBCB",'#10'"_ '#9
+'c #C4C4C4",'#10'": '#9'c #BCBCBC",'#10'"< '#9'c #B5B5B5",'#10'"[ '#9'c #B3B'
+'3B3",'#10'"} '#9'c #303030",'#10'"| '#9'c #4A3119",'#10'"1 '#9'c #DBDBDB",'
+#10'"2 '#9'c #DFDFDE",'#10'"3 '#9'c #E8E8E7",'#10'"4 '#9'c #E6E6E4",'#10'"5 '
+#9'c #D2D2D1",'#10'"6 '#9'c #C7C7C6",'#10'"7 '#9'c #BABAB9",'#10'"8 '#9'c #A'
+'DADAC",'#10'"9 '#9'c #A0A09F",'#10'"0 '#9'c #949493",'#10'"a '#9'c #494948"'
+','#10'"b '#9'c #B77D44",'#10'"c '#9'c #53514E",'#10'"d '#9'c #DADADA",'#10
+'"e '#9'c #DBDBDA",'#10'"f '#9'c #E1E1E0",'#10'"g '#9'c #DDDDDC",'#10'"h '#9
+'c #D6D6D5",'#10'"i '#9'c #CBCBCA",'#10'"j '#9'c #C1C1C0",'#10'"k '#9'c #B6B'
+'6B5",'#10'"l '#9'c #A9A9A8",'#10'"m '#9'c #686867",'#10'"n '#9'c #222221",'
+#10'"o '#9'c #493018",'#10'"p '#9'c #CDCDCD",'#10'"q '#9'c #CACAC9",'#10'"r '
+#9'c #D5D5D4",'#10'"s '#9'c #D2D2D0",'#10'"t '#9'c #CCCCCB",'#10'"u '#9'c #C'
+'2C2C1",'#10'"v '#9'c #B9B9B8",'#10'"w '#9'c #AFAFAE",'#10'"x '#9'c #A2A2A1"'
+','#10'"y '#9'c #959594",'#10'"z '#9'c #CECECE",'#10'"A '#9'c #BEBEBC",'#10
+'"B '#9'c #C4C4C2",'#10'"C '#9'c #C6C6C5",'#10'"D '#9'c #C3C3C2",'#10'"E '#9
+'c #BFBFBE",'#10'"F '#9'c #AEAEAD",'#10'"G '#9'c #A5A5A4",'#10'"H '#9'c #9E9'
+'E9D",'#10'"I '#9'c #6F6F6E",'#10'"J '#9'c #121212",'#10'"K '#9'c #BDBDBD",'
+#10'"L '#9'c #A6A6A5",'#10'"M '#9'c #AAAAA8",'#10'"N '#9'c #ADADAB",'#10'"O '
+#9'c #AEAEAC",'#10'"P '#9'c #ABABAA",'#10'"Q '#9'c #A7A7A6",'#10'"R '#9'c #A'
+'1A1A0",'#10'"S '#9'c #9A9A99",'#10'"T '#9'c #949492",'#10'"U '#9'c #8D8D8B"'
+','#10'"V '#9'c #232323",'#10'"W '#9'c #4A4A4A",'#10'"X '#9'c #4A4A49",'#10
+'"Y '#9'c #4C4C4B",'#10'"Z '#9'c #4C4C4C",'#10'"` '#9'c #4B4B4A",'#10'" .'#9
+'c #464646",'#10'"..'#9'c #434343",'#10'"+.'#9'c #414140",'#10'"@.'#9'c #343'
+'433",'#10'"#.'#9'c #1F1F1E",'#10'" . . . . ",'#10
+'" . . . . . . . ",'#10'" . . . . . '
+' ",'#10'" . . . ",'#10'" '
+' . . . . ",'#10'" + + + + ",'#10'"+ @ '
+'# $ @ + + + + + + + ",'#10'"+ # % & * * * * * * * * . '
+' ",'#10'"+ = & + - - ; > , , '' '' , . . . ",'#10'"+ & ) ! ~ ~ { ] ^ / '
+'( _ : < [ } ",'#10'"+ & | 1 2 3 4 2 5 6 7 8 9 0 a ",'#10'"+ b c d'
+' e f g h i j k l 9 m n ",'#10'"+ o p q r r s t u v w x y a ",'
+#10'"+ '' z A B C D E k F G H I J ",'#10'"+ K L M N O P Q R S T U a '
+' ",'#10'"V W X Y Z Y ` a ...+.@.#. ",'#10'" '
+' ",'#10'" "};'#10
]);

986
lcl/editbtn.pas Normal file
View File

@ -0,0 +1,986 @@
{
/***************************************************************************
edirbtn.pas
-----------
Component Library Extended dialogs Controls
***************************************************************************/
*****************************************************************************
* *
* This file is part of the Lazarus Component Library (LCL) *
* *
* See the file COPYING.LCL, included in this distribution, *
* for details about the copyright. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* *
*****************************************************************************
}
unit EditBtn;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LCLStrConsts, LCLType, LMessages, Graphics, Controls,
Forms, Dialogs, StdCtrls, Buttons, Calendar, ExtDlgs;
type
TCustomEditButton = class(TEdit)
private
FButton: TSpeedButton;
FButtonNeedsFocus: Boolean;
FDirectInput : Boolean;
FOnButtonClick : TNotifyEvent;
function GetButtonWidth: Integer;
function GetFlat: Boolean;
Procedure CheckButtonVisible;
procedure SetButtonNeedsFocus(const AValue: Boolean);
procedure SetButtonWidth(const AValue: Integer);
procedure SetFlat(const AValue: Boolean);
procedure SetGlyph(Pic: TBitmap);
function GetGlyph : TBitmap;
procedure SetNumGlyphs(ANumber: Integer);
function GetNumGlyphs:Integer;
function GetMinHeight: Integer;
procedure WMSetFocus(var Message: TLMSetFocus); message LM_SETFOCUS;
procedure WMKillFocus(var Message: TLMKillFocus); message LM_KILLFOCUS;
protected
procedure SetParent(AParent: TWinControl); override;
procedure DoSetBounds(ALeft, ATop, AWidth, AHeight: Integer); override;
procedure DoPositionButton; virtual;
procedure DoButtonClick (Sender: TObject); virtual;
Procedure Loaded; override;
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
procedure CMVisibleChanged(var Msg: TLMessage); message CM_VISIBLECHANGED;
procedure CMEnabledChanged(var Msg: TLMessage); message CM_ENABLEDCHANGED;
// New properties.
Property ButtonWidth : Integer Read GetButtonWidth write SetButtonWidth;
property DirectInput : Boolean read FDirectInput write FDirectInput Default True;
property Glyph : TBitmap read GetGlyph write SetGlyph;
property NumGlyphs : Integer read GetNumGlyphs write SetNumGlyphs;
property OnButtonClick : TNotifyEvent read FOnButtonClick write FOnButtonClick;
property Button: TSpeedButton read FButton;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
Property Flat : Boolean Read GetFlat Write SetFlat;
Property ButtonOnlyWhenFocused : Boolean Read FButtonNeedsFocus Write SetButtonNeedsFocus;
end;
TEditButton = Class(TCustomEditButton)
Public
Property Button;
published
// EditButton properties
Property ButtonWidth;
Property DirectInput;
property Glyph;
property NumGlyphs;
Property OnButtonClick;
Property Flat;
Property ButtonOnlyWhenFocused;
// Other properties
property AutoSize;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Enabled;
property Font;
property MaxLength;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnChange;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDrag;
end;
TAcceptFileNameEvent = Procedure (Sender : TObject; Var Value : String) of Object;
TDialogKind = (dkOpen,dkSave,dkPictureOpen,dkPictureSave);
TFileNameEdit = Class(TCustomEditButton)
private
FDialogOptions: TOpenOptions;
FFileName : String;
FDialogFiles : TStrings;
FDialogKind: TDialogKind;
FDialogTitle: String;
FFilter: String;
FFilterIndex: Integer;
FInitialDir: String;
FOnAcceptFN: TAcceptFileNameEvent;
function GetFileName: String;
procedure SetFileName(const AValue: String);
Protected
Function CreateDialog(AKind : TDialogKind) : TCommonDialog; Virtual;
Procedure SaveDialogResult(AKind : TDialogKind; D : TCommonDialog); Virtual;
Function CreateFileOpenBitmap : TBitmap; Virtual;
procedure DoButtonClick (Sender: TObject); override;
Procedure RunDialog; Virtual;
Public
constructor Create(AOwner: TComponent); override;
Destructor Destroy; override;
Property DialogFiles : TStrings Read FDialogFiles;
Published
// TFileName properties.
Property FileName : String Read GetFileName Write SetFileName;
Property InitialDir : String Read FInitialDir Write FInitialDir;
Property OnAcceptFileName : TAcceptFileNameEvent Read FOnAcceptFN Write FonAcceptFN;
Property DialogKind : TDialogKind Read FDialogKind Write FDialogKind;
Property DialogTitle : String Read FDialogTitle Write FDialogTitle;
Property DialogOptions : TOpenOptions Read FDialogOptions Write FDialogOptions;
Property Filter : String Read FFilter Write FFilter;
Property FilterIndex : Integer Read FFilterIndex Write FFIlterIndex;
// TEditButton properties.
Property ButtonWidth;
Property DirectInput;
Property ButtonOnlyWhenFocused;
// property Glyph;
property NumGlyphs;
Property Flat;
// Other properties
property AutoSize;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Enabled;
property Font;
property MaxLength;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnChange;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDrag;
end;
TDirectoryEdit = Class(TCustomEditButton)
private
FDialogTitle: String;
FRootDir: String;
FOnAcceptDir: TAcceptFileNameEvent;
FShowHidden: Boolean;
function GetDirectory: String;
procedure SetDirectory(const AValue: String);
Protected
Function CreateDialog : TCommonDialog; Virtual;
Function GetDialogResult(D : TCommonDialog) : String; Virtual;
Function CreateDirectoryBitmap : TBitmap; Virtual;
procedure DoButtonClick (Sender: TObject); override;
Procedure RunDialog; Virtual;
Public
constructor Create(AOwner: TComponent); override;
Destructor Destroy; override;
Published
// TDirectory properties.
Property Directory : String Read GetDirectory Write SetDirectory;
Property RootDir : String Read FRootDir Write FRootDir;
Property OnAcceptDirectory : TAcceptFileNameEvent Read FOnAcceptDir Write FonAcceptDir;
Property DialogTitle : String Read FDialogTitle Write FDialogTitle;
Property ShowHidden : Boolean Read FShowHidden Write FShowHidden;
// TEditButton properties.
Property ButtonWidth;
Property DirectInput;
Property ButtonOnlyWhenFocused;
// property Glyph;
property NumGlyphs;
Property Flat;
// Other properties
property AutoSize;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Enabled;
property Font;
property MaxLength;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnChange;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDrag;
end;
TAcceptDateEvent = Procedure (Sender : TObject; Var ADate : TDateTime; Var Action : Boolean) of Object;
TDateEdit = Class(TCustomEditButton)
private
FDialogTitle: String;
FDisplaySettings: TDisplaySettings;
FOnAcceptDate: TAcceptDateEvent;
function GetDate: TDateTime;
procedure SetDate(const AValue: TDateTime);
Function StoreTitle : Boolean;
Protected
Function CreateDateBitmap : TBitmap; Virtual;
procedure DoButtonClick (Sender: TObject); override;
Procedure RunDialog; Virtual;
Public
constructor Create(AOwner: TComponent); override;
Destructor Destroy; override;
Property Date : TDateTime Read GetDate Write SetDate;
Published
// TDateEdit settings
Property CalendarDisplaySettings : TDisplaySettings Read FDisplaySettings Write FDisplaySettings;
Property OnAcceptDate : TAcceptDateEvent Read FOnAcceptDAte Write FOnAcceptDate;
Property DialogTitle : String Read FDialogTitle Write FDialogTitle Stored StoreTitle;
// TEditButton properties.
Property ButtonWidth;
Property DirectInput;
Property ButtonOnlyWhenFocused;
// property Glyph;
property NumGlyphs;
Property Flat;
// Other properties
property AutoSize;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Enabled;
property Font;
property MaxLength;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnChange;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDrag;
end;
TAcceptValueEvent = Procedure (Sender : TObject; Var AValue : Double; Var Action : Boolean) of Object;
TCalcEdit = Class(TCustomEditButton)
private
FDialogTitle: String;
FLayout: TCalculatorLayout;
FOnAcceptValue: TAcceptValueEvent;
function GetAsFloat: Double;
function GetAsInteger: Integer;
procedure SetAsFloat(const AValue: Double);
procedure SetAsInteger(const AValue: Integer);
function TitleStored: boolean;
Protected
FCalcDialog : TForm;
Function CreateCalcBitmap : TBitmap; Virtual;
procedure DoButtonClick (Sender: TObject); override;
Procedure RunDialog; Virtual;
Public
constructor Create(AOwner: TComponent); override;
Destructor Destroy; override;
Published
// CalcEdit properties
Property CalculatorLayout : TCalculatorLayout Read FLayout Write Flayout;
Property AsFloat : Double Read GetAsFloat Write SetAsFloat;
Property AsInteger : Integer Read GetAsInteger Write SetAsInteger;
Property OnAcceptValue : TAcceptValueEvent Read FOnAcceptValue Write FOnAcceptValue;
Property DialogTitle : String Read FDialogTitle Write FDialogTitle Stored TitleStored;
// TEditButton properties.
Property ButtonWidth;
Property DirectInput;
Property ButtonOnlyWhenFocused;
// property Glyph;
property NumGlyphs;
Property Flat;
// Other properties
property AutoSize;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Enabled;
property Font;
property MaxLength;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnChange;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDrag;
end;
procedure Register;
Var
FileOpenGlyph : TBitmap;
DateGlyph : TBitmap;
CalcGlyph : TBitmap;
Const
ResBtnFileOpen = 'btnselfile';
ResBtnSelDir = 'btnseldir';
ResBtnCalendar = 'btncalendar';
ResBtnCalculator = 'btncalculator';
implementation
uses lresources;
Function GlyphFromBitmapOrResource(B : TBitmap; ResourceName : String) : TBitmap;
begin
Result:=TBitmap.Create;
If Assigned(B) then
Result.Assign(B)
else
Result.LoadFromLazarusResource(ResourceName);
end;
Function CreateFileOpenGlyph : TBitmap;
begin
Result:=GlyphFromBitmapOrResource(FileOpenGlyph,ResBtnFileOpen);
end;
Function CreateDirectoryGlyph : TBitmap;
begin
Result:=GlyphFromBitmapOrResource(FileOpenGlyph,ResBtnSelDir);
end;
Function CreateDateGlyph : TBitmap;
begin
Result:=GlyphFromBitmapOrResource(DateGlyph,ResBtnCalendar);
end;
Function CreateCalcGlyph : TBitmap;
begin
Result:=GlyphFromBitmapOrResource(CalcGlyph,ResBtnCalculator);
end;
{ TEditBtn }
constructor TCustomEditButton.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FButton := TSpeedButton.Create(Self);
FButton.Width := Self.Height;
FButton.Height := Self.Height;
FButton.FreeNotification(Self);
CheckButtonVisible;
FButton.OnClick := @DoButtonClick;
FButton.Cursor := crArrow;
ControlStyle := ControlStyle - [csSetCaption];
FDirectInput := True;
end;
destructor TCustomEditButton.Destroy;
begin
FreeAndNil(FButton);
inherited Destroy;
end;
procedure TCustomEditButton.SetGlyph(Pic: TBitmap);
Begin
FButton.Glyph:=Pic;
end;
function TCustomEditButton.GetButtonWidth: Integer;
begin
Result:=FButton.Width;
end;
function TCustomEditButton.GetFlat: Boolean;
begin
If Assigned(FButton) then
Result:=FButton.Flat
else
Result:=False;
end;
procedure TCustomEditButton.CheckButtonVisible;
begin
If Assigned(FButton) then
FButton.Visible:=(csdesigning in ComponentState) or
(Visible and (Focused or not FButtonNeedsFocus));
end;
procedure TCustomEditButton.SetButtonNeedsFocus(const AValue: Boolean);
begin
If FButtonNeedsFocus<>AValue then
begin
FButtonNeedsFocus:=AValue;
CheckButtonVisible;
end;
end;
procedure TCustomEditButton.SetButtonWidth(const AValue: Integer);
begin
FButton.Width:=AValue;
end;
procedure TCustomEditButton.SetFlat(const AValue: Boolean);
begin
If Assigned(FButton) then
FButton.Flat:=AValue;
end;
function TCustomEditButton.GetGlyph : TBitmap;
Begin
Result:=FButton.Glyph;
end;
procedure TCustomEditButton.SetNumGlyphs(ANumber: Integer);
Begin
FButton.NumGlyphs:=ANumber;
end;
function TCustomEditButton.GetNumGlyphs:Integer;
begin
Result:=FButton.NumGlyphs;
end;
procedure TCustomEditButton.Notification(AComponent: TComponent; Operation: TOperation);
begin
inherited Notification(AComponent, Operation);
if (AComponent = FButton) and (Operation = opRemove) then
FButton := nil;
end;
procedure TCustomEditButton.CMVisibleChanged(var Msg: TLMessage);
begin
CheckButtonVisible;
end;
procedure TCustomEditButton.CMEnabledChanged(var Msg: TLMessage);
begin
if FButton<>nil then
FButton.Enabled:=Enabled;
end;
function TCustomEditButton.GetMinHeight: Integer;
begin
Result:=23;
end;
procedure TCustomEditButton.DoButtonClick (Sender: TObject);
begin
If Not ReadOnly then
if Assigned(FOnButtonClick) then
FOnButtonClick(Self);
end;
procedure TCustomEditButton.Loaded;
begin
inherited Loaded;
CheckButtonVisible;
end;
procedure TCustomEditButton.WMKillFocus(var Message: TLMKillFocus);
begin
If FButtonNeedsFocus then
FButton.Visible:=False;
inherited;
end;
procedure TCustomEditButton.SetParent(AParent: TWinControl);
begin
inherited SetParent(AParent);
if FButton <> nil then
begin
FButton.Parent := Parent;
CheckButtonVisible;
end;
end;
procedure TCustomEditButton.DoSetBounds(ALeft, ATop, AWidth, AHeight: Integer);
begin
inherited DoSetBounds(ALeft, ATop, AWidth, AHeight);
DoPositionButton;
end;
procedure TCustomEditButton.DoPositionButton;
begin
if FButton <> nil then
FButton.SetBounds(Left+Width, Top, FButton.Width, Height);
end;
procedure TCustomEditButton.WMSetFocus(var Message: TLMSetFocus);
begin
FButton.Visible:=True;
inherited;
end;
{ TFileNameEdit }
constructor TFileNameEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FDialogFiles:=TStringList.Create;
Glyph:=CreateFileOpenBitmap;
end;
destructor TFileNameEdit.Destroy;
begin
FDialogFiles.Free;
inherited Destroy;
end;
procedure TFileNameEdit.SetFileName(const AValue: String);
begin
FFileNAme:=AValue;
Text:=AValue;
end;
function TFileNameEdit.GetFileName: String;
begin
Result:=Text;
end;
function TFileNameEdit.CreateDialog(AKind: TDialogKind): TCommonDialog;
Var
O : TOpenDialog;
S : TSaveDialog;
begin
Case AKind of
dkopen,dkPictureOpen :
begin
O:=TOpenDialog.Create(Self);
O.FileName:=FileName;
O.Options:=DialogOptions;
O.InitialDir:=InitialDir;
O.Filter:=Filter;
O.FilterIndex:=FilterIndex;
Result:=O;
end;
dkSave,dkPictureSave :
begin
S:=TSaveDialog.Create(Self);
S.Filter:=Filter;
S.FilterIndex:=FilterIndex;
Result:=S;
end;
end;
// Set some common things.
O.Title:=DialogTitle;
end;
procedure TFileNameEdit.SaveDialogResult(AKind: TDialogKind; D: TCommonDialog);
Var
FN : String;
begin
Case AKind of
dkOpen,dkPictureOpen :
begin
FN:=TOpenDialog(D).FileName;
If (FN<>'') then
begin
If Assigned(FOnAcceptFN) then
FOnAcceptFN(Self,Fn);
end;
If (FN<>'') then
begin
FileName:=FN;
FDialogFiles.Text:=TOpenDialog(D).Files.Text;
end;
end;
dkSave,dkPictureSave :
begin
FileName:=TSaveDialog(D).FileName;
FDialogFiles.Clear;
end;
end;
end;
function TFileNameEdit.CreateFileOpenBitmap: TBitmap;
begin
Result:=CreateFileOpenGlyph;
end;
procedure TFileNameEdit.DoButtonClick(Sender: TObject);
begin
inherited DoButtonClick(Sender);
RunDialog;
end;
procedure TFileNameEdit.RunDialog;
Var
D : TCommonDialog;
begin
D:=CreateDialog(DialogKind);
Try
If D.Execute then
SaveDialogResult(DialogKind,D);
Finally
D.Free;
end
end;
{ TDirectoryEdit }
constructor TDirectoryEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Glyph:=CreateDirectoryBitmap;
end;
destructor TDirectoryEdit.Destroy;
begin
inherited Destroy;
end;
procedure TDirectoryEdit.SetDirectory(const AValue: String);
begin
if (Text<>AValue) then
begin
Text:=AValue;
end;
end;
function TDirectoryEdit.CreateDialog: TCommonDialog;
begin
Result:=TSelectDirectoryDialog.Create(Self);
TSelectDirectoryDialog(Result).InitialDir:=RootDir;
TSelectDirectoryDialog(Result).FileName:=Directory;
end;
Function TDirectoryEdit.GetDialogResult(D: TCommonDialog) : String;
begin
Result:=TSelectDirectoryDialog(D).FileName;
end;
function TDirectoryEdit.CreateDirectoryBitmap: TBitmap;
begin
Result:=CreateDirectoryGlyph;
end;
procedure TDirectoryEdit.DoButtonClick(Sender: TObject);
begin
inherited DoButtonClick(Sender);
RunDialog;
end;
procedure TDirectoryEdit.RunDialog;
Var
D : String;
Dlg : TCommonDialog;
B : Boolean;
begin
If Assigned(SelectDirectoryProc) then
begin
D:=Text;
B:=SelectDirectory(DialogTitle,RootDir,D,ShowHidden);
end
else
begin
Dlg:=CreateDialog;
Try
B:=Dlg.Execute;
If B then
D:=GetDialogResult(Dlg);
Finally
Dlg.Free;
end;
end;
If B then
begin
If Assigned(FOnAcceptDir) then
begin
FOnAcceptdir(Self,D);
If (D<>'') then
Directory:=D;
end
else
Directory:=D;
end;
end;
function TDirectoryEdit.GetDirectory: String;
begin
Result:=Text;
end;
{ TDateEdit }
constructor TDateEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FDisplaySettings:=[dsShowHeadings, dsShowDayNames];
FDialogTitle:=rsPickDate;
Glyph:=CreateDateBitmap;
end;
destructor TDateEdit.Destroy;
begin
inherited Destroy;
end;
function TDateEdit.GetDate: TDateTime;
begin
Result:=0;
Try
Result:=StrToDate(Text)
Except
// Catch errors.
end;
end;
procedure TDateEdit.SetDate(const AValue: TDateTime);
begin
Text:=DateToStr(AValue);
end;
function TDateEdit.StoreTitle: Boolean;
begin
Result:=FDialogTitle<>rsPickDate;
end;
function TDateEdit.CreateDateBitmap: TBitmap;
begin
Result:=CreateDateGlyph;
end;
procedure TDateEdit.DoButtonClick(Sender: TObject);
begin
inherited DoButtonClick(Sender);
RunDialog;
end;
procedure TDateEdit.RunDialog;
Var
FCalendar : TCalendarDialogForm;
B : Boolean;
D : TDateTime;
P : TPoint;
begin
FCalendar:=CreateCalendarForm(Self,0);
Try
P.X:=Self.Left;
P.Y:=Self.top;
P:=ClientToScreen(P);
P.Y:=P.Y+Self.Height;
FCalendar.Top:=P.Y;
FCalendar.Left:=P.X;
FCalendar.DisplaySettings:=FDisplaySettings;
FCalendar.Date:=Date;
FCalendar.Caption:=DialogTitle;
If FCalendar.ShowModal=mrOK then
begin
D:=FCalendar.Date;
B:=True;
If Assigned(FOnAcceptDate) then
FOnAcceptDate(Self,D,B);
If B then
Date:=D;
end;
Finally
FCalendar.Free;
end;
end;
{ TCalcEdit }
function TCalcEdit.GetAsFloat: Double;
begin
Try
Result:=StrToFloat(Text);
except
Result:=0.0;
end;
end;
function TCalcEdit.GetAsInteger: Integer;
begin
Result:=StrToIntDef(Text,0);
end;
procedure TCalcEdit.SetAsFloat(const AValue: Double);
begin
Text:=FloatToStr(AValue);
end;
procedure TCalcEdit.SetAsInteger(const AValue: Integer);
begin
Text:=IntToStr(AValue);
end;
function TCalcEdit.TitleStored: boolean;
begin
Result:=FDialogTitle<>rsCalculator;
end;
function TCalcEdit.CreateCalcBitmap: TBitmap;
begin
Result:=CreateCalcGlyph;
end;
procedure TCalcEdit.DoButtonClick(Sender: TObject);
begin
inherited DoButtonClick(Sender);
RunDialog;
end;
procedure TCalcEdit.RunDialog;
Var
D : Double;
B : Boolean;
begin
D:=AsFloat;
With CreateCalculatorForm(Self,FLayout,0) do
Try
Caption:=DialogTitle;
Value:=D;
If (ShowModal=mrOK) then
begin
D:=Value;
B:=True;
If Assigned(FOnAcceptValue) then
FOnAcceptValue(Self,D,B);
If B then
AsFloat:=D;
end;
Finally
Free;
end;
end;
constructor TCalcEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Glyph:=CreateCalcBitmap;
FdialogTitle:=rsCalculator;
end;
destructor TCalcEdit.Destroy;
begin
inherited Destroy;
end;
procedure Register;
begin
RegisterComponents('Misc', [TEditButton,TFileNameEdit,TDirectoryEdit,
TDateEdit,TCalcEdit]);
end;
Initialization
{$i edbtnimg.lrs}
Finalization
end.

50
lcl/extdlgs.lrs Normal file
View File

@ -0,0 +1,50 @@
{ Resources for calculator }
LazarusResources.Add('btncalccancel','XPM',[
'/* XPM */'#10'static char *calccancel[] = {'#10'/* columns rows colors chars'
+'-per-pixel */'#10'"11 13 2 1",'#10'" c black",'#10'"> c None",'#10'/* pixe'
+'ls */'#10'">>>>>>>>>>>",'#10'">>>>>>>>>>>",'#10'"> >>>>> >",'#10'"> >>>'
+' >",'#10'">> > >>",'#10'">>> >>>",'#10'">>>> >>>>",'#10'">>> '
+' >>>",'#10'">> > >>",'#10'"> >>> >",'#10'"> >>>>> >",'#10'">>>>>'
+'>>>>>>",'#10'">>>>>>>>>>>"'#10'};'#10
]);
LazarusResources.Add('btncalcmin','XPM',[
'/* XPM */'#10'static char *calcmin[] = {'#10'/* columns rows colors chars-pe'
+'r-pixel */'#10'"10 13 2 1",'#10'"+ c black",'#10'"> c None",'#10'/* pixels '
+'*/'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'
+#10'">>>>>>>>>>",'#10'">++++++++>",'#10'">++++++++>",'#10'">>>>>>>>>>",'#10
+'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>'
+'>>>>>>>>"'#10'};'#10
]);
LazarusResources.Add('btncalcmul','XPM',[
'/* XPM */'#10'static char *calcmul[] = {'#10'/* columns rows colors chars-pe'
+'r-pixel */'#10'"9 13 2 1",'#10'"+ c black",'#10'"> c None",'#10'/* pixels *'
+'/'#10'">>>>>>>>>",'#10'">>>>>>>>>",'#10'">>>>>>>>>",'#10'">++>>>++>",'#10'"'
+'>+++>+++>",'#10'">>+++++>>",'#10'">>>+++>>>",'#10'">>+++++>>",'#10'">+++>++'
+'+>",'#10'">++>>>++>",'#10'">>>>>>>>>",'#10'">>>>>>>>>",'#10'">>>>>>>>>"'#10
+'};'#10
]);
LazarusResources.Add('btncalcok','XPM',[
'/* XPM */'#10'static char *calcok[] = {'#10'/* columns rows colors chars-per'
+'-pixel */'#10'"13 13 2 1",'#10'" c black",'#10'"> c None",'#10'/* pixels *'
+'/'#10'">>>>>>>>>>>>>",'#10'">>>>>>>>>>>>>",'#10'">>>>>>>>>> >",'#10'">>>>>'
+'>>>> >",'#10'">>>>>>>> >>",'#10'">>>>>>> >>>",'#10'"> >>> >>>>",'
+#10'"> > >>>>>",'#10'">> >>>>>>",'#10'">>> >>>>>>>",'#10'">>>> >>>'
+'>>>>>",'#10'">>>>>>>>>>>>>",'#10'">>>>>>>>>>>>>"'#10'};'#10
]);
LazarusResources.Add('btncalcplus','XPM',[
'/* XPM */'#10'static char *calcplus[] = {'#10'/* columns rows colors chars-p'
+'er-pixel */'#10'"10 13 2 1",'#10'"+ c black",'#10'"> c None",'#10'/* pixels'
+' */'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>>>++>>>>",'#10'">>>>++>>>>",'
+#10'">>>>++>>>>",'#10'">++++++++>",'#10'">++++++++>",'#10'">>>>++>>>>",'#10
+'">>>>++>>>>",'#10'">>>>++>>>>",'#10'">>>>>>>>>>",'#10'">>>>>>>>>>",'#10'">>'
+'>>>>>>>>"'#10'};'#10
]);
LazarusResources.Add('btncalcpmin','XPM',[
'/* XPM */'#10'static char *calcpmin[] = {'#10'/* columns rows colors chars-per'
+'-pixel */'#10'"10 13 2 1",'#10'" c black",'#10'"> c None",'#10'/* pixels *'
+'/'#10'">>>>>>>>>>",'#10'">>>> >>>>",'#10'">>>> >>>>",'#10'">>>> >>>>",'
+#10'"> >",'#10'"> >",'#10'">>>> >>>>",'#10'">>>> >>>>",'#10
+'">>>> >>>>",'#10'">>>>>>>>>>",'#10'"> >",'#10'"> >",'#10'">>'
+'>>>>>>>>"'#10'};'#10
]);

File diff suppressed because it is too large Load Diff

View File

@ -72,7 +72,7 @@ ResourceString
// Select font dialog
rsSelectFontTitle = 'Select a font';
// gtk interface
rsWarningUnremovedPaintMessages = ' WARNING: There are %s unremoved LM_'
+'PAINT/LM_GtkPAINT message links left.';
@ -127,6 +127,7 @@ ResourceString
// StringHashList, LResource, Menus, ExtCtrls, ImgList, Spin
// StdCtrls, Calendar, CustomTimer, Forms, Grids, LCLProc, Controls, ComCtrls,
// ExtDlgs, EditBtn
sInvalidActionRegistration = 'Invalid action registration';
sInvalidActionUnregistration = 'Invalid action unregistration';
sInvalidActionEnumeration = 'Invalid action enumeration';
@ -175,9 +176,10 @@ ResourceString
rsCanNotFocus = 'Can not focus';
rsListIndexExceedsBounds = 'List index exceeds bounds (%d)';
rsResourceNotFound = 'Resource %s not found';
rsCalculator = 'Calculator';
rsError = 'Error';
rsPickDate = 'Select a date';
implementation
end.

View File

@ -899,6 +899,7 @@ begin
AddFile('extdlgs.pp','ExtDlgs',pftUnit,[pffHasRegisterProc],cpBase);
AddFile('dbctrls.pp','DBCtrls',pftUnit,[pffHasRegisterProc],cpBase);
AddFile('dbgrids.pas','DBGrids',pftUnit,[pffHasRegisterProc],cpBase);
AddFile('editbtn.pas','EditBtn',pftUnit,[pffHasRegisterProc],cpBase);
// increase priority by one, so that the LCL components are inserted to the
// left in the palette
for i:=0 to FileCount-1 do

View File

@ -41,7 +41,7 @@ uses
LazarusPackageIntf,
Menus, Buttons, StdCtrls, ExtCtrls, ComCtrls, Forms, Grids, Controls,
Dialogs, Spin, Arrow, Calendar, MaskEdit, CheckLst, PairSplitter, ExtDlgs,
DBCtrls, DBGrids;
DBCtrls, DBGrids, EditBtn;
procedure Register;
@ -67,6 +67,7 @@ begin
RegisterUnit('ExtDlgs',@ExtDlgs.Register);
RegisterUnit('DBCtrls',@DBCtrls.Register);
RegisterUnit('DBGrids',@DBGrids.Register);
RegisterUnit('EditBtn',@EditBtn.Register);
end;
end.