mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-18 18:02:48 +02:00
Opkman: Voting system implemented locally.
git-svn-id: trunk@53697 -
This commit is contained in:
parent
25ef353188
commit
ca254979a9
4
.gitattributes
vendored
4
.gitattributes
vendored
@ -3290,6 +3290,10 @@ components/onlinepackagemanager/images/Tree_Buttons/Info.png -text svneol=unset#
|
||||
components/onlinepackagemanager/images/Tree_Buttons/Ok.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/Refresh.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/Refresh1.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/StarEmpty.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/StarFull.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/StarFull_Blue.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/images/Tree_Buttons/StarHalfFull.png -text svneol=unset#image/png
|
||||
components/onlinepackagemanager/languages/opkman_VirtualTrees.fi.po svneol=native#text/plain
|
||||
components/onlinepackagemanager/languages/opkman_VirtualTrees.hu.po svneol=native#text/plain
|
||||
components/onlinepackagemanager/languages/opkman_VirtualTrees.po svneol=native#text/plain
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 584 B |
BIN
components/onlinepackagemanager/images/Tree_Buttons/StarFull.png
Normal file
BIN
components/onlinepackagemanager/images/Tree_Buttons/StarFull.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 637 B |
Binary file not shown.
After Width: | Height: | Size: 699 B |
Binary file not shown.
After Width: | Height: | Size: 762 B |
@ -65,6 +65,7 @@ resourcestring
|
||||
rsMainFrm_VSTHeaderColumn_Update = 'Update';
|
||||
rsMainFrm_VSTHeaderColumn_Data = 'Status/Data';
|
||||
rsMainFrm_VSTHeaderColumn_Button = '';
|
||||
rsMainFrm_VSTHeaderColumn_Rating = 'Rating';
|
||||
rsMainFrm_VSTText_PackageCategory = 'Package category';
|
||||
rsMainFrm_VSTText_PackageStatus = 'Package status';
|
||||
rsMainFrm_VSTText_Version = 'Version';
|
||||
@ -179,6 +180,7 @@ resourcestring
|
||||
rsMainFrm_rsPackageDependency1 = 'Resolve dependency?';
|
||||
rsMainFrm_rsPackageDependency2 = 'Not resolving dependencies might lead to install failure!';
|
||||
rsMainFrm_rsPackageDependency4 = 'dependency list. Unchecking it might lead to installing failure. Do you wish to continue?';
|
||||
rsMainFrm_rsPackageRating = 'Your vote for package "%s" is: %s. Thank you for voting!';
|
||||
|
||||
//progress form
|
||||
rsProgressFrm_Caption0 = 'Downloading packages';
|
||||
|
@ -2,10 +2,10 @@ object MainFrm: TMainFrm
|
||||
Left = 463
|
||||
Height = 640
|
||||
Top = 164
|
||||
Width = 850
|
||||
Width = 900
|
||||
Caption = 'Online Package Manager'
|
||||
ClientHeight = 640
|
||||
ClientWidth = 850
|
||||
ClientWidth = 900
|
||||
Color = clBtnFace
|
||||
Constraints.MinHeight = 400
|
||||
Constraints.MinWidth = 600
|
||||
@ -20,11 +20,11 @@ object MainFrm: TMainFrm
|
||||
Left = 0
|
||||
Height = 570
|
||||
Top = 0
|
||||
Width = 850
|
||||
Width = 900
|
||||
Align = alClient
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 570
|
||||
ClientWidth = 850
|
||||
ClientWidth = 900
|
||||
TabOrder = 0
|
||||
OnResize = pnMainResize
|
||||
object pnMessage: TPanel
|
||||
@ -49,18 +49,18 @@ object MainFrm: TMainFrm
|
||||
Left = 0
|
||||
Height = 60
|
||||
Top = 0
|
||||
Width = 850
|
||||
Width = 900
|
||||
Align = alTop
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 60
|
||||
ClientWidth = 850
|
||||
ClientWidth = 900
|
||||
Color = clBtnFace
|
||||
ParentColor = False
|
||||
TabOrder = 0
|
||||
OnResize = pnTopResize
|
||||
object spExpand: TSpeedButton
|
||||
Tag = 1
|
||||
Left = 802
|
||||
Left = 852
|
||||
Height = 20
|
||||
Top = 13
|
||||
Width = 21
|
||||
@ -125,7 +125,7 @@ object MainFrm: TMainFrm
|
||||
end
|
||||
object spCollapse: TSpeedButton
|
||||
Tag = 2
|
||||
Left = 824
|
||||
Left = 874
|
||||
Height = 20
|
||||
Top = 13
|
||||
Width = 21
|
||||
@ -370,7 +370,7 @@ object MainFrm: TMainFrm
|
||||
Left = 0
|
||||
Height = 510
|
||||
Top = 60
|
||||
Width = 850
|
||||
Width = 900
|
||||
Align = alClient
|
||||
Color = clBtnFace
|
||||
PopupMenu = pmMemo
|
||||
@ -384,10 +384,10 @@ object MainFrm: TMainFrm
|
||||
Left = 0
|
||||
Height = 70
|
||||
Top = 570
|
||||
Width = 850
|
||||
Width = 900
|
||||
Align = alBottom
|
||||
ClientHeight = 70
|
||||
ClientWidth = 850
|
||||
ClientWidth = 900
|
||||
TabOrder = 1
|
||||
OnResize = pnToolBarResize
|
||||
object tbButtons: TToolBar
|
||||
@ -542,7 +542,7 @@ object MainFrm: TMainFrm
|
||||
left = 64
|
||||
top = 163
|
||||
Bitmap = {
|
||||
4C69140000001000000010000000A38D780095806C12B3A18B9FC5B49FFEC6B5
|
||||
4C69190000001000000010000000A38D780095806C12B3A18B9FC5B49FFEC6B5
|
||||
A0FFC6B5A0FFC6B5A0FFC6B5A1FFBEAD98E3A5917C4BFFFFFF00988674000000
|
||||
0000000000000000000000000000FFEAD300AC9A886AD5C9BBF9E3D9CBFFE2D9
|
||||
CAFFE2D9CAFFE2D9CAFFE3D9CAFFE0D6C8FFC3B4A4CB84715C189B8874000000
|
||||
@ -1182,7 +1182,167 @@ object MainFrm: TMainFrm
|
||||
1CFFFFBB19FF9B5005CC0000001A0000001900000016000000130000000E0000
|
||||
000A000000050000000200000000FFFFFF00000000130000002F723A02A6974C
|
||||
02CC974C02CC723A02A600000033000000320000002C000000250000001C0000
|
||||
00130000000A0000000400000000
|
||||
00130000000A0000000400000000000000000000000000000000000000000000
|
||||
000000000000000203011A699B401C6DA2400002030100000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000100082131022AA4F2CF2AA5F3CF0925380200000100000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000203001B70A75228A4F4FD28A4F4FD1C75AD5200020300000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000001
|
||||
0100071F2E0226A0EFCD26A3F3FE26A3F3FE26A1F0CD08243502000101000000
|
||||
0000000000000000000000000000000102000001020000020301000204010414
|
||||
1F021C7EBD6725A0F0FD25A1F1FE25A2F2FE25A0F0FD1D81C267041621020002
|
||||
04010002030100010200000102000F456820145C8B4A1973AC6F1E89CF93229C
|
||||
EAC0239EEEFC239FEFFE24A0F0FF24A0F0FF239FEFFE239EEEFC229CEBC01E8A
|
||||
D0931973AD6F145D8D4A0F4669202294DED7219DECFC219EEDFD219EEEFE219E
|
||||
EEFE219EEEFE229EEEFE229EEEFF229EEEFF229EEEFE219EEEFE219EEEFE219E
|
||||
EEFE219EEDFD219DECFC2294DED70F3D5B1F2093DCD91F9CEBFE209CECFE209D
|
||||
EDFF209DEDFF209DEDFF209DEDFF209DEDFF209DEDFF209DEDFF209DEDFF209C
|
||||
ECFE1F9CEBFE2093DCD91041611F000203000E38551B1E90D9D51D9AE9FE1E9A
|
||||
EAFE1E9BEBFF1E9BEBFF1E9BEBFF1E9BEBFF1E9BEBFF1E9BEBFF1E9AEAFE1D9A
|
||||
E9FE1E91DAD50F3C591B0002030000000000000102000C354F191C91DCDD1C98
|
||||
E8FE1C99E9FF1C99E9FF1C99E9FF1C99E9FF1C99E9FF1C99E9FF1C98E8FE1C92
|
||||
DCDD0D3A55190001020000000000000000000000000000020401146EA6791A96
|
||||
E6FE1B97E7FF1B97E7FF1B97E7FF1B97E7FF1B97E7FF1B97E7FF1A96E6FE1572
|
||||
AD790002040100000000000000000000000000000000000203011270AC7C1894
|
||||
E4FD1995E5FF1995E5FF1995E5FF1995E5FF1995E5FF1995E5FF1894E4FD1374
|
||||
B37C0002030100000000000000000000000000000000000203011486D0A71692
|
||||
E2FE1792E2FE1792E2FE1792E2FE1792E2FE1792E2FE1792E2FE1692E2FE158A
|
||||
D5A7000305010000000000000000000000000000000002111A01148EDDD11590
|
||||
E0FE1490DFFD158AD5F01474B2981473B198158AD5F01490DFFD1590E0FE148E
|
||||
DDD1021521010000000000000000000000000000000005273E06138DDBF51489
|
||||
D5F41472AE8D09314C160004060100030501092F48161371AC8D1489D5F4138D
|
||||
DBF5062B4406000000000000000000000000000001000621330B126BA4870B39
|
||||
561F0006090100010100000000000000000000010100000508010A37531F126B
|
||||
A3870624380B00000100000000004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004E4E4E019A9A9A409D9D9D404E4E4E014D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004D4D4D0064646402C6C6C6CFC6C6C6CF686868024D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004E4E4E009F9F9F52C6C6C6FDC6C6C6FDA3A3A3524E4E4E004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D0063636302C3C3C3CDC5C5C5FEC5C5C5FEC3C3C3CD666666024D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004E4E4E014E4E4E015B5B
|
||||
5B02AAAAAA67C3C3C3FDC3C3C3FEC4C4C4FEC3C3C3FDACACAC675D5D5D024E4E
|
||||
4E014E4E4E014D4D4D004D4D4D00808080209090904AA1A1A16FB2B2B293C0C0
|
||||
C0C0C1C1C1FCC2C2C2FEC3C3C3FFC3C3C3FFC2C2C2FEC1C1C1FCC0C0C0C0B3B3
|
||||
B393A2A2A26F9292924A80808020BABABAD7C1C1C1FCC1C1C1FDC1C1C1FEC1C1
|
||||
C1FEC1C1C1FEC1C1C1FEC1C1C1FFC1C1C1FFC1C1C1FEC1C1C1FEC1C1C1FEC1C1
|
||||
C1FEC1C1C1FDC1C1C1FCBABABAD77979791FB9B9B9D9C0C0C0FEC0C0C0FEC1C1
|
||||
C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC0C0
|
||||
C0FEC0C0C0FEB9B9B9D97C7C7C1F4E4E4E007676761BB7B7B7D5BFBFBFFEBFBF
|
||||
BFFEBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFEBFBF
|
||||
BFFEB8B8B8D57979791B4E4E4E004D4D4D004D4D4D0074747419B8B8B8DDBDBD
|
||||
BDFEBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBDBDBDFEB8B8
|
||||
B8DD767676194D4D4D004D4D4D004D4D4D004D4D4D004E4E4E019E9E9E79BCBC
|
||||
BCFEBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBCBCBCFEA1A1
|
||||
A1794E4E4E014D4D4D004D4D4D004D4D4D004D4D4D004E4E4E01A0A0A07CBABA
|
||||
BAFDBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBABABAFDA3A3
|
||||
A37C4E4E4E014D4D4D004D4D4D004D4D4D004D4D4D004E4E4E01B1B1B1A7B9B9
|
||||
B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB3B3
|
||||
B3A74F4F4F014D4D4D004D4D4D004D4D4D004D4D4D0058585801B6B6B6D1B8B8
|
||||
B8FEB8B8B8FDB3B3B3F0A3A3A398A2A2A298B3B3B3F0B8B8B8FDB8B8B8FEB6B6
|
||||
B6D15C5C5C014D4D4D004D4D4D004D4D4D004D4D4D006A6A6A06B6B6B6F5B3B3
|
||||
B3F4A1A1A18D717171164F4F4F014F4F4F0170707016A0A0A08DB3B3B3F4B6B6
|
||||
B6F56D6D6D064D4D4D004D4D4D004D4D4D004D4D4D006565650B9C9C9C877676
|
||||
761F515151014D4D4D004D4D4D004D4D4D004D4D4D00505050017575751F9C9C
|
||||
9C876767670B4D4D4D004D4D4D00000000000000000000000000000000000000
|
||||
000000000000000203011A699B401A699B404E4E4E014D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D00000000000000000000000000000000000000
|
||||
000000000100082031022BA4F1CF2BA4F1CF686868024D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D00000000000000000000000000000000000000
|
||||
0000000203001A6FA6522BA5F3FD2BA5F3FDA3A3A3524E4E4E004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D00000000000000000000000000000000000001
|
||||
0100061F2E0225A0EECD2BA4F2FE2BA4F2FEC3C3C3CD666666024D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D00000102000001020000020301000204010414
|
||||
1F021C7DBD6724A0F0FD2AA3F2FE2AA3F2FEC3C3C3FDACACAC675D5D5D024E4E
|
||||
4E014E4E4E014D4D4D004D4D4D000F456820135C8B4A1872AC6F1E89CE93229C
|
||||
EAC0229EEEFC229FEFFE28A1F0FF28A1F0FFC2C2C2FEC1C1C1FCC0C0C0C0B3B3
|
||||
B393A2A2A26F9292924A808080202193DDD7209CEBFC209DECFD209DEDFE209D
|
||||
EDFE219DEDFE219EEEFE26A0EEFF26A0EEFFC1C1C1FEC1C1C1FEC1C1C1FEC1C1
|
||||
C1FEC1C1C1FDC1C1C1FCBABABAD70F3D5B1F1F92DBD91F9BEAFE1F9BEBFE1F9C
|
||||
ECFF1F9CECFF209CECFF249EECFF249EECFFC1C1C1FFC1C1C1FFC1C1C1FFC0C0
|
||||
C0FEC0C0C0FEB9B9B9D97C7C7C1F000203000D38551B1E90D9D51D99E8FE1E99
|
||||
E9FE1E9AEAFF1E9AEAFF239CEAFF239CEAFFBFBFBFFFBFBFBFFFBFBFBFFEBFBF
|
||||
BFFEB8B8B8D57979791B4E4E4E0000000000000102000C354F191C91DCDD1B98
|
||||
E8FE1C98E8FF1C98E8FF219AE8FF219AE8FFBEBEBEFFBEBEBEFFBDBDBDFEB8B8
|
||||
B8DD767676194D4D4D004D4D4D00000000000000000000020401146EA6791996
|
||||
E6FE1A97E7FF1A97E7FF1F98E6FF1F98E6FFBDBDBDFFBDBDBDFFBCBCBCFEA1A1
|
||||
A1794E4E4E014D4D4D004D4D4D000000000000000000000203011270AC7C1894
|
||||
E4FD1895E5FF1995E5FF1D97E4FF1D97E4FFBBBBBBFFBBBBBBFFBABABAFDA3A3
|
||||
A37C4E4E4E014D4D4D004D4D4D000000000000000000000203011486D0A71692
|
||||
E2FE1792E2FE1792E2FE1893E2FE1893E2FEB9B9B9FEB9B9B9FEB9B9B9FEB3B3
|
||||
B3A74F4F4F014D4D4D004D4D4D00000000000000000002111A01148EDDD11590
|
||||
E0FE1490DFFD158AD5F01575B2981575B298B3B3B3F0B8B8B8FDB8B8B8FEB6B6
|
||||
B6D15C5C5C014D4D4D004D4D4D00000000000000000005273E06138DDBF5148A
|
||||
D5F41472AE8D09314C16000406010004060170707016A0A0A08DB3B3B3F4B6B6
|
||||
B6F56D6D6D064D4D4D004D4D4D0000000000000001000621330B126BA4870B39
|
||||
561F000609010001010000000000000000004D4D4D00505050017575751F9C9C
|
||||
9C876767670B4D4D4D004D4D4D00000000000000000000000000000000000000
|
||||
000000000000030100019B4C1A40A2511C400301000100000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000101000031180802F2782ACFF3782ACF381C090201010000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000003010000A7521B52F47828FDF47828FDAD541C5203010000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000100
|
||||
00002E160702EF7526CDF37626FEF37626FEF07526CD35190802010000000000
|
||||
0000000000000000000000000000020100000201000003010001040200011F0F
|
||||
0402BD5B1C67F07525FDF17525FEF27525FEF07525FDC25E1D67210F04020402
|
||||
000103010001020100000201000068320F208B43144AAC52196FCF641E93EA70
|
||||
22C0EE7323FCEF7323FEF07424FFF07424FFEF7323FEEE7323FCEB7122C0D064
|
||||
1E93AD53196F8D44144A69320F20DE6C22D7EC7021FCED7021FDEE7121FEEE71
|
||||
21FEEE7121FEEE7222FEEE7222FFEE7222FFEE7222FEEE7121FEEE7121FEEE71
|
||||
21FEED7021FDEC7021FCDE6C22D75B2D0F1FDC6920D9EB6E1FFEEC7020FEED70
|
||||
20FFED7020FFED7020FFED7020FFED7020FFED7020FFED7020FFED7020FFEC70
|
||||
20FEEB6E1FFEDC6920D96130101F03010000552B0E1BD9671ED5E96C1DFEEA6E
|
||||
1EFEEB6E1EFFEB6E1EFFEB6E1EFFEB6E1EFFEB6E1EFFEB6E1EFFEA6E1EFEE96C
|
||||
1DFEDA671ED5592C0F1B0301000000000000020100004F260C19DC671CDDE86C
|
||||
1CFEE96C1CFFE96C1CFFE96C1CFFE96C1CFFE96C1CFFE96C1CFFE86C1CFEDC66
|
||||
1CDD55280D190201000000000000000000000000000004020001A64C1479E66A
|
||||
1AFEE76B1BFFE76B1BFFE76B1BFFE76B1BFFE76B1BFFE76B1BFFE66A1AFEAD50
|
||||
1579040200010000000000000000000000000000000003010001AC4E127CE468
|
||||
18FDE56919FFE56919FFE56919FFE56919FFE56919FFE56919FFE46818FDB352
|
||||
137C030100010000000000000000000000000000000003010001D05E14A7E266
|
||||
16FEE26717FEE26717FEE26717FEE26717FEE26717FEE26717FEE26616FED560
|
||||
15A705020001000000000000000000000000000000001A0B0201DD6314D1E065
|
||||
15FEDF6314FDD56015F0B2521498B1521498D56015F0DF6314FDE06515FEDD63
|
||||
14D1210E0201000000000000000000000000000000003E1C0506DB6113F5D560
|
||||
14F4AE50148D4C240916060200010502000148220916AC4E138DD56014F4DB61
|
||||
13F5441F0606000000000000000000000000010100003318060BA44B12875628
|
||||
0B1F09030001010000000000000000000000010000000803000153260A1FA34A
|
||||
1287381A060B01010000000000004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004E4E4E019A9A9A409D9D9D404E4E4E014D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004D4D4D0064646402C6C6C6CFC6C6C6CF686868024D4D4D004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D004E4E4E009F9F9F52C6C6C6FDC6C6C6FDA3A3A3524E4E4E004D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D
|
||||
4D0063636302C3C3C3CDC5C5C5FEC5C5C5FEC3C3C3CD666666024D4D4D004D4D
|
||||
4D004D4D4D004D4D4D004D4D4D004D4D4D004D4D4D004E4E4E014E4E4E015B5B
|
||||
5B02AAAAAA67C3C3C3FDC3C3C3FEC4C4C4FEC3C3C3FDACACAC675D5D5D024E4E
|
||||
4E014E4E4E014D4D4D004D4D4D00808080209090904AA1A1A16FB2B2B293C0C0
|
||||
C0C0C1C1C1FCC2C2C2FEC3C3C3FFC3C3C3FFC2C2C2FEC1C1C1FCC0C0C0C0B3B3
|
||||
B393A2A2A26F9292924A80808020BABABAD7C1C1C1FCC1C1C1FDC1C1C1FEC1C1
|
||||
C1FEC1C1C1FEC1C1C1FEC1C1C1FFC1C1C1FFC1C1C1FEC1C1C1FEC1C1C1FEC1C1
|
||||
C1FEC1C1C1FDC1C1C1FCBABABAD77979791FB9B9B9D9C0C0C0FEC0C0C0FEC1C1
|
||||
C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC0C0
|
||||
C0FEC0C0C0FEB9B9B9D97C7C7C1F4E4E4E007676761BB7B7B7D5BFBFBFFEBFBF
|
||||
BFFEBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFEBFBF
|
||||
BFFEB8B8B8D57979791B4E4E4E004D4D4D004D4D4D0074747419B8B8B8DDBDBD
|
||||
BDFEBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBDBDBDFEB8B8
|
||||
B8DD767676194D4D4D004D4D4D004D4D4D004D4D4D004E4E4E019E9E9E79BCBC
|
||||
BCFEBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBCBCBCFEA1A1
|
||||
A1794E4E4E014D4D4D004D4D4D004D4D4D004D4D4D004E4E4E01A0A0A07CBABA
|
||||
BAFDBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBBBBBBFFBABABAFDA3A3
|
||||
A37C4E4E4E014D4D4D004D4D4D004D4D4D004D4D4D004E4E4E01B1B1B1A7B9B9
|
||||
B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB9B9B9FEB3B3
|
||||
B3A74F4F4F014D4D4D004D4D4D004D4D4D004D4D4D0058585801B6B6B6D1B8B8
|
||||
B8FEB8B8B8FDB3B3B3F0A3A3A398A2A2A298B3B3B3F0B8B8B8FDB8B8B8FEB6B6
|
||||
B6D15C5C5C014D4D4D004D4D4D004D4D4D004D4D4D006A6A6A06B6B6B6F5B3B3
|
||||
B3F4A1A1A18D717171164F4F4F014F4F4F0170707016A0A0A08DB3B3B3F4B6B6
|
||||
B6F56D6D6D064D4D4D004D4D4D004D4D4D004D4D4D006565650B9C9C9C877676
|
||||
761F515151014D4D4D004D4D4D004D4D4D004D4D4D00505050017575751F9C9C
|
||||
9C876767670B4D4D4D004D4D4D00
|
||||
}
|
||||
end
|
||||
object imTBNor: TImageList
|
||||
|
@ -207,6 +207,7 @@ type
|
||||
FUpdateSize: Int64;
|
||||
FIsDirZipped: Boolean;
|
||||
FZippedBaseDir: String;
|
||||
FRating: Integer;
|
||||
FPackageFiles: TCollection;
|
||||
function GetDownloadable: Boolean;
|
||||
function GetExtractable: Boolean;
|
||||
@ -226,6 +227,7 @@ type
|
||||
property DownloadZipURL: String read FDownloadZipURL write FDownloadZipURL;
|
||||
property HasUpdate: Boolean read FHasUpdate write FHasUpdate;
|
||||
property DisableInOPM: Boolean read FDisableInOPM write FDisableInOPM;
|
||||
property Rating: Integer read FRating write FRating;
|
||||
published
|
||||
property Name: String read FName write FName;
|
||||
property DisplayName: String read FDisplayName write FDisplayName;
|
||||
|
@ -250,6 +250,7 @@ begin
|
||||
HasUpdate := False;
|
||||
Package.DownloadZipURL := FXML.GetValue(Path + 'DownloadZipURL', '');
|
||||
Package.DisableInOPM := FXML.GetValue(Path + 'DisableInOPM', False);
|
||||
Package.Rating := FXML.GetValue(Path + 'Rating', 0);
|
||||
PackageFileCount := FXML.GetValue(Path + 'Count', 0);
|
||||
for J := 0 to PackageFileCount - 1 do
|
||||
begin
|
||||
@ -296,6 +297,7 @@ begin
|
||||
FXML.SetDeleteValue(Path + 'Name', Package.Name, '');
|
||||
FXML.SetDeleteValue(Path + 'DownloadZipURL', Package.DownloadZipURL, '');
|
||||
FXML.SetDeleteValue(Path + 'DisableInOPM', Package.DisableInOPM, False);
|
||||
FXML.SetDeleteValue(Path + 'Rating', Package.Rating, 0);
|
||||
FXML.SetDeleteValue(Path + 'Count', SerializablePackages.Items[I].PackageFiles.Count, 0);
|
||||
for J := 0 to SerializablePackages.Items[I].PackageFiles.Count - 1 do
|
||||
begin
|
||||
|
@ -31,7 +31,8 @@ interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, Controls, Graphics, Menus, Dialogs, Forms, LCLIntf, contnrs,
|
||||
PackageIntf, Buttons, opkman_VirtualTrees, opkman_common, opkman_serializablepackages;
|
||||
PackageIntf, Buttons, Math, opkman_VirtualTrees, opkman_VTGraphics, opkman_common,
|
||||
opkman_serializablepackages;
|
||||
|
||||
|
||||
type
|
||||
@ -69,6 +70,7 @@ type
|
||||
InstallState: Integer;
|
||||
ButtonID: Integer;
|
||||
Button: TSpeedButton;
|
||||
Rating: Integer;
|
||||
end;
|
||||
|
||||
TFilterBy = (fbPackageName, fbPackageFileName, fbPackageCategory, fbPackageState,
|
||||
@ -81,12 +83,14 @@ type
|
||||
private
|
||||
FVST: TVirtualStringTree;
|
||||
FHoverNode: PVirtualNode;
|
||||
FHoverP: TPoint;
|
||||
FHoverColumn: Integer;
|
||||
FLink: String;
|
||||
FLinkClicked: Boolean;
|
||||
FSortCol: Integer;
|
||||
FSortDir: opkman_VirtualTrees.TSortDirection;
|
||||
FCheckingNodes: Boolean;
|
||||
FLeaving: Boolean;
|
||||
FOnChecking: TOnChecking;
|
||||
FOnChecked: TNotifyEvent;
|
||||
procedure VSTBeforeCellPaint(Sender: TBaseVirtualTree;
|
||||
@ -109,6 +113,8 @@ type
|
||||
{%H-}TextType: TVSTTextType);
|
||||
procedure VSTFreeNode(Sender: TBaseVirtualTree; Node: PVirtualNode);
|
||||
procedure VSTMouseMove(Sender: TObject; {%H-}Shift: TShiftState; X, Y: Integer);
|
||||
procedure VSTMouseEnter(Sender: TObject);
|
||||
procedure VSTMouseLeave(Sender: TObject);
|
||||
procedure VSTMouseDown(Sender: TObject; Button: TMouseButton; {%H-}Shift: TShiftState; X, Y: Integer);
|
||||
procedure VSTGetHint(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex;
|
||||
var LineBreakStyle: TVTTooltipLineBreakStyle; var HintText: String);
|
||||
@ -117,13 +123,15 @@ type
|
||||
procedure VSTCollapsed(Sender: TBaseVirtualTree; {%H-}Node: PVirtualNode);
|
||||
procedure VSTExpanding(Sender: TBaseVirtualTree; {%H-}Node: PVirtualNode; var {%H-}Allowed: Boolean);
|
||||
procedure VSTCollapsing(Sender: TBaseVirtualTree; {%H-}Node: PVirtualNode; var {%H-}Allowed: Boolean);
|
||||
procedure VSTOnDblClick(Sender: TObject);
|
||||
procedure VSTDblClick(Sender: TObject);
|
||||
procedure VSTScroll(Sender: TBaseVirtualTree; {%H-}DeltaX, {%H-}DeltaY: Integer);
|
||||
function GetDisplayString(const AStr: String): String;
|
||||
function IsAllChecked(const AChecking: PVirtualNode): Boolean;
|
||||
procedure ButtonClick(Sender: TObject);
|
||||
procedure ShowButtons;
|
||||
procedure HideButtons;
|
||||
procedure DrawStars(ACanvas: TCanvas; AStartIndex: Integer; P: TPoint; AAvarage: Double);
|
||||
function GetColumn(const AX: Integer): Integer;
|
||||
function TranslateCategories(const AStr: String): String;
|
||||
public
|
||||
constructor Create(const AParent: TWinControl; const AImgList: TImageList;
|
||||
@ -173,6 +181,7 @@ begin
|
||||
DefaultText := '';
|
||||
Header.AutoSizeIndex := 4;
|
||||
Header.Height := 25;
|
||||
|
||||
with Header.Columns.Add do
|
||||
begin
|
||||
Position := 0;
|
||||
@ -213,9 +222,10 @@ begin
|
||||
with Header.Columns.Add do
|
||||
begin
|
||||
Position := 5;
|
||||
Width := 25;
|
||||
Alignment := taCenter;
|
||||
Width := 88;
|
||||
Options := Options - [coResizable];
|
||||
Text := rsMainFrm_VSTHeaderColumn_Button;
|
||||
Text := rsMainFrm_VSTHeaderColumn_Rating;
|
||||
end;
|
||||
Header.Options := [hoAutoResize, hoColumnResize, hoRestrictDrag, hoShowSortGlyphs, hoVisible, hoAutoSpring];
|
||||
{$IFDEF LCLCarbon}
|
||||
@ -226,7 +236,7 @@ begin
|
||||
ShowHint := True;
|
||||
TabOrder := 2;
|
||||
TreeOptions.MiscOptions := [toCheckSupport, toFullRepaintOnResize, toInitOnSave, toToggleOnDblClick, toWheelPanning];
|
||||
TreeOptions.PaintOptions := [toHideFocusRect, toAlwaysHideSelection, toPopupMode, toShowButtons, toShowDropmark, toShowRoot, toThemeAware, toUseBlendedImages];
|
||||
TreeOptions.PaintOptions := [toHideFocusRect, toAlwaysHideSelection, toPopupMode, toShowButtons, toShowDropmark, toShowRoot, toThemeAware];
|
||||
TreeOptions.SelectionOptions := [toFullRowSelect, toRightClickSelect];
|
||||
TreeOptions.AutoOptions := [toAutoTristateTracking];
|
||||
OnBeforeCellPaint := @VSTBeforeCellPaint;
|
||||
@ -238,8 +248,10 @@ begin
|
||||
OnGetImageIndex := @VSTGetImageIndex;
|
||||
OnHeaderClick := @VSTHeaderClick;
|
||||
OnMouseMove := @VSTMouseMove;
|
||||
OnMouseLeave := @VSTMouseLeave;
|
||||
OnMouseEnter := @VSTMouseEnter;
|
||||
OnMouseDown := @VSTMouseDown;
|
||||
OnDblClick := @VSTOnDblClick;
|
||||
OnDblClick := @VSTDblClick;
|
||||
OnGetHint := @VSTGetHint;
|
||||
OnAfterCellPaint := @VSTAfterCellPaint;
|
||||
OnCollapsed := @VSTCollapsed;
|
||||
@ -299,6 +311,7 @@ begin
|
||||
Data^.InstallState := SerializablePackages.GetPackageInstallState(SerializablePackages.Items[I]);
|
||||
Data^.HasUpdate := SerializablePackages.Items[I].HasUpdate;
|
||||
Data^.DisableInOPM := SerializablePackages.Items[I].DisableInOPM;
|
||||
Data^.Rating := SerializablePackages.Items[I].Rating;
|
||||
FVST.IsDisabled[Node] := Data^.DisableInOPM;
|
||||
Data^.DataType := 1;
|
||||
for J := 0 to SerializablePackages.Items[I].PackageFiles.Count - 1 do
|
||||
@ -606,6 +619,70 @@ begin
|
||||
HideButtons;
|
||||
end;
|
||||
|
||||
procedure TVisualTree.DrawStars(ACanvas: TCanvas; AStartIndex: Integer;
|
||||
P: TPoint; AAvarage: Double);
|
||||
|
||||
procedure Draw(const AX, AY: Integer; ATyp, ACnt: Integer);
|
||||
var
|
||||
Bmp: TBitMap;
|
||||
I: Integer;
|
||||
begin
|
||||
Bmp := TBitmap.Create;
|
||||
try
|
||||
Bmp.Width := 16;
|
||||
Bmp.Height := 16;
|
||||
if AStartIndex + ATyp > 25 then
|
||||
ShowMessage('crap');
|
||||
TImageList(FVST.Images).GetBitmap(AStartIndex + ATyp, Bmp);
|
||||
for I := 0 to ACnt - 1 do
|
||||
ACanvas.Draw(AX + I*16 + 5, AY, Bmp);
|
||||
finally
|
||||
Bmp.Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
var
|
||||
F: Double;
|
||||
I, X, Y: Integer;
|
||||
Stars, NoStars: Integer;
|
||||
HalfStar: Boolean;
|
||||
begin
|
||||
HalfStar := False;
|
||||
F := Frac(AAvarage);
|
||||
I := Trunc(AAvarage);
|
||||
case CompareValue(F, 0.25, 0.005) of
|
||||
-1:
|
||||
begin
|
||||
Stars := I;
|
||||
NoStars := 5 - Stars;
|
||||
end;
|
||||
0, 1:
|
||||
begin
|
||||
if CompareValue(F, 0.75, 0.005) = -1 then
|
||||
begin
|
||||
Stars := I;
|
||||
NoStars := 5 - Stars - 1;
|
||||
HalfStar := True;
|
||||
end
|
||||
else
|
||||
begin
|
||||
Stars := I + 1;
|
||||
NoStars := 5 - Stars;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
X := P.X;
|
||||
Y := P.Y;
|
||||
Draw(X, Y, 0, Stars);
|
||||
Inc(X, Stars*16);
|
||||
if HalfStar then
|
||||
begin
|
||||
Draw(X, Y, 2, 1);
|
||||
Inc(X, 16);
|
||||
end;
|
||||
Draw(X, Y, 1, NoStars);
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTAfterCellPaint(Sender: TBaseVirtualTree;
|
||||
TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
|
||||
const CellRect: TRect);
|
||||
@ -613,17 +690,19 @@ var
|
||||
Data: PData;
|
||||
R: TRect;
|
||||
Text: String;
|
||||
P: TPoint;
|
||||
Stars: Integer;
|
||||
begin
|
||||
if Column = 5 then
|
||||
if Column = 4 then
|
||||
begin
|
||||
Data := FVST.GetNodeData(Node);
|
||||
if Assigned(Data^.Button) then
|
||||
begin
|
||||
R := FVST.GetDisplayRect(Node, Column, false);
|
||||
Data^.Button.Left := R.Left + 1;
|
||||
Data^.Button.Width := R.Right - R.Left -2;
|
||||
R := FVST.GetDisplayRect(Node, Column, False);
|
||||
Data^.Button.Width := 25;
|
||||
Data^.Button.Left := R.Right - Data^.Button.Width - 1;
|
||||
Data^.Button.Top := R.Top + 1;
|
||||
Data^.Button.Height := R.Bottom - R.Top - 2;
|
||||
Data^.Button.Height := R.Bottom - R.Top - 1;
|
||||
case Data^.DataType of
|
||||
3: Text := Data^.Description;
|
||||
9: Text := Data^.License;
|
||||
@ -631,6 +710,25 @@ begin
|
||||
Data^.Button.Visible := ((R.Bottom > FVST.Top) and (R.Bottom < FVST.Top + FVST.Height)) and (Trim(Text) <> '');
|
||||
Data^.Button.Enabled := not FVST.IsDisabled[Node];
|
||||
end;
|
||||
end
|
||||
else if Column = 5 then
|
||||
begin
|
||||
Data := FVST.GetNodeData(Node);
|
||||
if Data^.DataType = 1 then
|
||||
begin
|
||||
R := FVST.GetDisplayRect(Node, Column, False);
|
||||
P.X := R.Left + 1;
|
||||
P.Y := ((R.Bottom - R.Top - 16) div 2) + 1;
|
||||
if (Node = FHoverNode) and (not FLeaving) and (FHoverP.X >= P.X + 1) and (Abs(FHoverP.X - P.X) <= R.Right - R.Bottom) then
|
||||
begin
|
||||
Stars := Trunc((FHoverP.X - P.X)/16) + 1;
|
||||
if Stars > 5 then
|
||||
Stars := 5;
|
||||
DrawStars(TargetCanvas, 23, P, Stars)
|
||||
end
|
||||
else
|
||||
DrawStars(TargetCanvas, 20, P, Data^.Rating);
|
||||
end
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -1020,6 +1118,7 @@ begin
|
||||
Data^.DownloadZipURL := Package.DownloadZipURL;
|
||||
Data^.HasUpdate := Package.HasUpdate;
|
||||
Data^.DisableInOPM := Package.DisableInOPM;
|
||||
Data^.Rating := Package.Rating;
|
||||
FVST.IsDisabled[Node] := Data^.DisableInOPM;
|
||||
FVST.ReinitNode(Node, False);
|
||||
FVST.RepaintNode(Node);
|
||||
@ -1068,39 +1167,15 @@ procedure TVisualTree.VSTBeforeCellPaint(Sender: TBaseVirtualTree;
|
||||
var
|
||||
Data: PData;
|
||||
begin
|
||||
if CellPaintMode = cpmPaint then
|
||||
begin
|
||||
Data := Sender.GetNodeData(Node);
|
||||
|
||||
if (Data^.DataType = 0) or (Data^.DataType = 1) or (Data^.DataType = 2) then
|
||||
begin
|
||||
if (Node = Sender.FocusedNode) then
|
||||
begin
|
||||
case Column of
|
||||
0: begin
|
||||
if Data^.DataType = 0 then
|
||||
TargetCanvas.Brush.Color := $00E5E5E5 //00D8D8D8
|
||||
TargetCanvas.Brush.Color := $00E5E5E5
|
||||
else
|
||||
TargetCanvas.Brush.Color := $00E5E5E5;
|
||||
TargetCanvas.Brush.Color := clBtnFace;
|
||||
TargetCanvas.FillRect(CellRect);
|
||||
TargetCanvas.Brush.Color := FVST.Colors.FocusedSelectionColor;
|
||||
TargetCanvas.FillRect(ContentRect)
|
||||
end
|
||||
else
|
||||
begin
|
||||
TargetCanvas.Brush.Color := FVST.Colors.FocusedSelectionColor;
|
||||
TargetCanvas.FillRect(CellRect)
|
||||
end;
|
||||
end;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if Data^.DataType = 0 then
|
||||
TargetCanvas.Brush.Color := $00E5E5E5 //00D8D8D8
|
||||
else if Data^.DataType = 1 then
|
||||
TargetCanvas.Brush.Color := $00E5E5E5;
|
||||
TargetCanvas.FillRect(CellRect);
|
||||
end;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if (Node = Sender.FocusedNode) then
|
||||
begin
|
||||
TargetCanvas.Brush.Color := FVST.Colors.FocusedSelectionColor;
|
||||
@ -1109,11 +1184,6 @@ begin
|
||||
else
|
||||
TargetCanvas.FillRect(CellRect);
|
||||
end
|
||||
else
|
||||
begin
|
||||
TargetCanvas.Brush.Style := bsClear;
|
||||
TargetCanvas.FillRect(CellRect);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -1498,6 +1568,13 @@ begin
|
||||
TargetCanvas.Font.Color := clGreen
|
||||
else
|
||||
TargetCanvas.Font.Color := clWhite;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if Node <> Sender.FocusedNode then
|
||||
TargetCanvas.Font.Color := clBlack
|
||||
else
|
||||
TargetCanvas.Font.Color := clWhite;
|
||||
end;
|
||||
end
|
||||
else
|
||||
@ -1520,56 +1597,93 @@ begin
|
||||
Finalize(Data^);
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
|
||||
function TVisualTree.GetColumn(const AX: Integer): Integer;
|
||||
var
|
||||
I, L, R: Integer;
|
||||
I: Integer;
|
||||
L, R: Integer;
|
||||
begin
|
||||
FHoverColumn := -1;
|
||||
FHoverNode:= VST.GetNodeAt(X, Y);
|
||||
Result := -1;
|
||||
for I := 0 to VST.Header.Columns.Count - 1 do
|
||||
begin
|
||||
VST.Header.Columns.GetColumnBounds(I, L, R);
|
||||
if (X >= L) and (X <= R) then
|
||||
if (AX >= L) and (AX <= R) then
|
||||
begin
|
||||
FHoverColumn := I;
|
||||
Result := I;
|
||||
Break;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
procedure TVisualTree.VSTMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
|
||||
begin
|
||||
FHoverColumn := -1;
|
||||
FHoverP.X := X;
|
||||
FHoverP.Y := Y;
|
||||
FHoverNode:= VST.GetNodeAt(X, Y);
|
||||
FHoverColumn := GetColumn(X);
|
||||
if (FHoverColumn = 5) and (FHoverNode <> nil) then
|
||||
begin
|
||||
FVST.ReinitNode(FHoverNode, False);
|
||||
FVST.RepaintNode(FHoverNode);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTMouseEnter(Sender: TObject);
|
||||
begin
|
||||
FLeaving := False;
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTMouseLeave(Sender: TObject);
|
||||
begin
|
||||
if Assigned(FHoverNode) then
|
||||
begin
|
||||
FLeaving := True;
|
||||
FVST.ReinitNode(FHoverNode, False);
|
||||
FVST.RepaintNode(FHoverNode)
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTMouseDown(Sender: TObject; Button: TMouseButton;
|
||||
Shift: TShiftState; X, Y: Integer);
|
||||
var
|
||||
Node: PVirtualNode;
|
||||
Data: PData;
|
||||
I, L, R: Integer;
|
||||
MenuItem: TMenuItem;
|
||||
DownColumn: Integer;
|
||||
R: TRect;
|
||||
PackageName: String;
|
||||
Package: TPackage;
|
||||
begin
|
||||
Node := FVST.GetNodeAt(X, Y);
|
||||
if Node <> nil then
|
||||
begin
|
||||
DownColumn := GetColumn(X);
|
||||
Data := FVST.GetNodeData(Node);
|
||||
if Button = mbLeft then
|
||||
begin
|
||||
if (Data^.DataType = 17) or (Data^.DataType = 18) then
|
||||
begin
|
||||
for I := 0 to VST.Header.Columns.Count - 1 do
|
||||
begin
|
||||
VST.Header.Columns.GetColumnBounds(I, L, R);
|
||||
if (X >= L) and (X <= R) and (I = 4) then
|
||||
case DownColumn of
|
||||
4: if (Data^.DataType = 17) or (Data^.DataType = 18) and (DownColumn = 4) then
|
||||
begin
|
||||
FLinkClicked := True;
|
||||
if (Data^.DataType = 17) and (Trim(Data^.HomePageURL) <> '') then
|
||||
begin
|
||||
FLink := Data^.HomePageURL;
|
||||
Break
|
||||
end
|
||||
FLink := Data^.HomePageURL
|
||||
else if (Data^.DataType = 18) and (Trim(Data^.DownloadURL) <> '') then
|
||||
begin
|
||||
FLink := Data^.DownloadURL;
|
||||
Break;
|
||||
end;
|
||||
end;
|
||||
5: begin
|
||||
R := FVST.GetDisplayRect(Node, DownColumn, False);
|
||||
Data^.Rating := Trunc((FHoverP.X - R.Left - 1)/16) + 1;
|
||||
if Data^.Rating > 5 then
|
||||
Data^.Rating := 5;
|
||||
Package := SerializablePackages.FindPackage(Data^.PackageName, fpbPackageName);
|
||||
if Package <> nil then
|
||||
Package.Rating := Data^.Rating;
|
||||
if Data^.PackageDisplayName <> '' then
|
||||
PackageName := Data^.PackageDisplayName
|
||||
else
|
||||
PackageName := Data^.PackageName;
|
||||
MessageDlgEx(Format(rsMainFrm_rsPackageRating, [PackageName, InttoStr(Data^.Rating)]), mtInformation, [mbOk], TForm(FVST.Parent.Parent));
|
||||
end;
|
||||
end;
|
||||
end
|
||||
@ -1601,7 +1715,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TVisualTree.VSTOnDblClick(Sender: TObject);
|
||||
procedure TVisualTree.VSTDblClick(Sender: TObject);
|
||||
begin
|
||||
if FLinkClicked then
|
||||
begin
|
||||
|
@ -2354,6 +2354,8 @@ type
|
||||
// search, sort
|
||||
FOnCompareNodes: TVTCompareEvent; // used during sort
|
||||
FOnIncrementalSearch: TVTIncrementalSearchEvent; // triggered on every key press (not key down)
|
||||
FOnMouseEnter: TNotifyEvent;
|
||||
FOnMouseLeave: TNotifyEvent;
|
||||
|
||||
procedure AdjustCoordinatesByIndent(var PaintInfo: TVTPaintInfo; Indent: Integer);
|
||||
procedure AdjustImageBorder(ImageWidth, ImageHeight: Integer; BidiMode: TBidiMode; VAlign: Integer; var R: TRect;
|
||||
@ -2480,6 +2482,7 @@ type
|
||||
procedure CMHintShow(var Message: TCMHintShow); message CM_HINTSHOW;
|
||||
procedure CMMouseLeave(var Message: TLMessage); message CM_MOUSELEAVE;
|
||||
procedure CMMouseWheel(var Message: TLMMouseEvent); message LM_MOUSEWHEEL;
|
||||
procedure CMMouseEnter(var Message: TLMessage); message CM_MOUSEENTER;
|
||||
{$ifdef EnableNativeTVM}
|
||||
procedure TVMGetItem(var Message: TLMessage); message TVM_GETITEM;
|
||||
procedure TVMGetItemRect(var Message: TLMessage); message TVM_GETITEMRECT;
|
||||
@ -2640,6 +2643,8 @@ type
|
||||
function DoKeyAction(var CharCode: Word; var Shift: TShiftState): Boolean; virtual;
|
||||
procedure DoLoadUserData(Node: PVirtualNode; Stream: TStream); virtual;
|
||||
procedure DoMeasureItem(TargetCanvas: TCanvas; Node: PVirtualNode; var NodeHeight: Integer); virtual;
|
||||
procedure DoMouseEnter(); virtual;
|
||||
procedure DoMouseLeave(); virtual;
|
||||
procedure DoNodeCopied(Node: PVirtualNode); virtual;
|
||||
function DoNodeCopying(Node, NewParent: PVirtualNode): Boolean; virtual;
|
||||
function DoNodeHeightDblClickResize(Node: PVirtualNode; Column: TColumnIndex; Shift: TShiftState;
|
||||
@ -2917,6 +2922,8 @@ type
|
||||
property OnKeyAction: TVTKeyActionEvent read FOnKeyAction write FOnKeyAction;
|
||||
property OnLoadNode: TVTSaveNodeEvent read FOnLoadNode write FOnLoadNode;
|
||||
property OnMeasureItem: TVTMeasureItemEvent read FOnMeasureItem write FOnMeasureItem;
|
||||
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
|
||||
property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
|
||||
property OnNodeCopied: TVTNodeCopiedEvent read FOnNodeCopied write FOnNodeCopied;
|
||||
property OnNodeCopying: TVTNodeCopyingEvent read FOnNodeCopying write FOnNodeCopying;
|
||||
property OnNodeExport: TVTNodeExportEvent read FOnNodeExport write FOnNodeExport;
|
||||
@ -3585,6 +3592,8 @@ type
|
||||
property OnMouseMove;
|
||||
property OnMouseUp;
|
||||
property OnMouseWheel;
|
||||
property OnMouseEnter;
|
||||
property OnMouseLeave;
|
||||
property OnNewText;
|
||||
property OnNodeCopied;
|
||||
property OnNodeCopying;
|
||||
@ -15044,6 +15053,12 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TBaseVirtualTree.CMMouseEnter(var Message: TLMessage);
|
||||
begin
|
||||
DoMouseEnter();
|
||||
inherited;
|
||||
end;
|
||||
|
||||
//----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
procedure TBaseVirtualTree.CMMouseLeave(var Message: TLMessage);
|
||||
@ -15075,7 +15090,7 @@ begin
|
||||
|
||||
Header.FColumns.FDownIndex := NoColumn;
|
||||
Header.FColumns.FHoverIndex := NoColumn;
|
||||
|
||||
DoMouseLeave();
|
||||
inherited CMMouseLeave(Message);
|
||||
{$ifdef DEBUG_VTV}Logger.ExitMethod([lcMessages],'CMMouseLeave');{$endif}
|
||||
end;
|
||||
@ -18973,6 +18988,22 @@ begin
|
||||
FOnMeasureItem(Self, TargetCanvas, Node, NodeHeight);
|
||||
end;
|
||||
|
||||
procedure TBaseVirtualTree.DoMouseEnter();
|
||||
|
||||
begin
|
||||
if Assigned(FOnMouseEnter) then
|
||||
FOnMouseEnter(Self);
|
||||
end;
|
||||
|
||||
//----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
procedure TBaseVirtualTree.DoMouseLeave;
|
||||
|
||||
begin
|
||||
if Assigned(FOnMouseLeave) then
|
||||
FOnMouseLeave(Self);
|
||||
end;
|
||||
|
||||
//----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
procedure TBaseVirtualTree.DoNodeCopied(Node: PVirtualNode);
|
||||
|
Loading…
Reference in New Issue
Block a user