diff --git a/Resources/VT XP button minus.bmp b/Resources/VT XP button minus.bmp deleted file mode 100644 index 03323ae06..000000000 Binary files a/Resources/VT XP button minus.bmp and /dev/null differ diff --git a/Resources/VT XP button plus.bmp b/Resources/VT XP button plus.bmp deleted file mode 100644 index 474ebdca9..000000000 Binary files a/Resources/VT XP button plus.bmp and /dev/null differ diff --git a/Resources/VT XP.bmp b/Resources/VT XP.bmp deleted file mode 100644 index 357999965..000000000 Binary files a/Resources/VT XP.bmp and /dev/null differ diff --git a/Resources/VT check dark.bmp b/Resources/VT check dark.bmp deleted file mode 100644 index fd1176ef0..000000000 Binary files a/Resources/VT check dark.bmp and /dev/null differ diff --git a/Resources/VT check light.bmp b/Resources/VT check light.bmp deleted file mode 100644 index b30e00110..000000000 Binary files a/Resources/VT check light.bmp and /dev/null differ diff --git a/Resources/VT flat.bmp b/Resources/VT flat.bmp deleted file mode 100644 index 8a2d425af..000000000 Binary files a/Resources/VT flat.bmp and /dev/null differ diff --git a/Resources/VT header split.cur b/Resources/VT header split.cur deleted file mode 100644 index 8d78c7171..000000000 Binary files a/Resources/VT header split.cur and /dev/null differ diff --git a/Resources/VT move all.bmp b/Resources/VT move all.bmp deleted file mode 100644 index d4fa1bde9..000000000 Binary files a/Resources/VT move all.bmp and /dev/null differ diff --git a/Resources/VT move all.cur b/Resources/VT move all.cur deleted file mode 100644 index 9bf5a5a01..000000000 Binary files a/Resources/VT move all.cur and /dev/null differ diff --git a/Resources/VT move east-west.bmp b/Resources/VT move east-west.bmp deleted file mode 100644 index 5862398ac..000000000 Binary files a/Resources/VT move east-west.bmp and /dev/null differ diff --git a/Resources/VT move east-west.cur b/Resources/VT move east-west.cur deleted file mode 100644 index 7d9fb2894..000000000 Binary files a/Resources/VT move east-west.cur and /dev/null differ diff --git a/Resources/VT move east.cur b/Resources/VT move east.cur deleted file mode 100644 index 54de6d871..000000000 Binary files a/Resources/VT move east.cur and /dev/null differ diff --git a/Resources/VT move north-east.cur b/Resources/VT move north-east.cur deleted file mode 100644 index 337a91204..000000000 Binary files a/Resources/VT move north-east.cur and /dev/null differ diff --git a/Resources/VT move north-south.bmp b/Resources/VT move north-south.bmp deleted file mode 100644 index f1ec02d54..000000000 Binary files a/Resources/VT move north-south.bmp and /dev/null differ diff --git a/Resources/VT move north-south.cur b/Resources/VT move north-south.cur deleted file mode 100644 index edf9523eb..000000000 Binary files a/Resources/VT move north-south.cur and /dev/null differ diff --git a/Resources/VT move north-west.cur b/Resources/VT move north-west.cur deleted file mode 100644 index a95776684..000000000 Binary files a/Resources/VT move north-west.cur and /dev/null differ diff --git a/Resources/VT move north.cur b/Resources/VT move north.cur deleted file mode 100644 index dc1acb487..000000000 Binary files a/Resources/VT move north.cur and /dev/null differ diff --git a/Resources/VT move south-east.cur b/Resources/VT move south-east.cur deleted file mode 100644 index ce0a5ef7e..000000000 Binary files a/Resources/VT move south-east.cur and /dev/null differ diff --git a/Resources/VT move south-west.cur b/Resources/VT move south-west.cur deleted file mode 100644 index b2e753766..000000000 Binary files a/Resources/VT move south-west.cur and /dev/null differ diff --git a/Resources/VT move south.cur b/Resources/VT move south.cur deleted file mode 100644 index b319725ac..000000000 Binary files a/Resources/VT move south.cur and /dev/null differ diff --git a/Resources/VT move west.cur b/Resources/VT move west.cur deleted file mode 100644 index ceaa02a9b..000000000 Binary files a/Resources/VT move west.cur and /dev/null differ diff --git a/Resources/VT tick dark.bmp b/Resources/VT tick dark.bmp deleted file mode 100644 index cf14fd21d..000000000 Binary files a/Resources/VT tick dark.bmp and /dev/null differ diff --git a/Resources/VT tick light.bmp b/Resources/VT tick light.bmp deleted file mode 100644 index bed0bf8a7..000000000 Binary files a/Resources/VT tick light.bmp and /dev/null differ diff --git a/Resources/VT utilities.bmp b/Resources/VT utilities.bmp deleted file mode 100644 index 2a1dadfc6..000000000 Binary files a/Resources/VT utilities.bmp and /dev/null differ diff --git a/Resources/VT vertical split.cur b/Resources/VT vertical split.cur deleted file mode 100644 index 420322089..000000000 Binary files a/Resources/VT vertical split.cur and /dev/null differ diff --git a/Resources/VT_CHECK_DARK.bmp b/Resources/VT_CHECK_DARK.bmp deleted file mode 100644 index fd1176ef0..000000000 Binary files a/Resources/VT_CHECK_DARK.bmp and /dev/null differ diff --git a/Resources/VT_CHECK_LIGHT.bmp b/Resources/VT_CHECK_LIGHT.bmp deleted file mode 100644 index b30e00110..000000000 Binary files a/Resources/VT_CHECK_LIGHT.bmp and /dev/null differ diff --git a/Resources/VT_FLAT.bmp b/Resources/VT_FLAT.bmp deleted file mode 100644 index 8a2d425af..000000000 Binary files a/Resources/VT_FLAT.bmp and /dev/null differ diff --git a/Resources/VT_HEADERSPLIT.cur b/Resources/VT_HEADERSPLIT.cur index 8d78c7171..6e6bac96c 100644 Binary files a/Resources/VT_HEADERSPLIT.cur and b/Resources/VT_HEADERSPLIT.cur differ diff --git a/Resources/VT_MOVEALL.cur b/Resources/VT_MOVEALL.cur index 9bf5a5a01..d46d8a041 100644 Binary files a/Resources/VT_MOVEALL.cur and b/Resources/VT_MOVEALL.cur differ diff --git a/Resources/VT_MOVEALL_BMP.bmp b/Resources/VT_MOVEALL_BMP.bmp deleted file mode 100644 index 993a5ddd3..000000000 Binary files a/Resources/VT_MOVEALL_BMP.bmp and /dev/null differ diff --git a/Resources/VT_MOVEE.cur b/Resources/VT_MOVEE.cur index 54de6d871..5705a91a6 100644 Binary files a/Resources/VT_MOVEE.cur and b/Resources/VT_MOVEE.cur differ diff --git a/Resources/VT_MOVEEW.cur b/Resources/VT_MOVEEW.cur index 7d9fb2894..c2ed12016 100644 Binary files a/Resources/VT_MOVEEW.cur and b/Resources/VT_MOVEEW.cur differ diff --git a/Resources/VT_MOVEEW_BMP.bmp b/Resources/VT_MOVEEW_BMP.bmp deleted file mode 100644 index 428755bac..000000000 Binary files a/Resources/VT_MOVEEW_BMP.bmp and /dev/null differ diff --git a/Resources/VT_MOVEN.cur b/Resources/VT_MOVEN.cur index dc1acb487..e1764c59d 100644 Binary files a/Resources/VT_MOVEN.cur and b/Resources/VT_MOVEN.cur differ diff --git a/Resources/VT_MOVENE.cur b/Resources/VT_MOVENE.cur index 337a91204..964178be4 100644 Binary files a/Resources/VT_MOVENE.cur and b/Resources/VT_MOVENE.cur differ diff --git a/Resources/VT_MOVENS.cur b/Resources/VT_MOVENS.cur index edf9523eb..3f12a9833 100644 Binary files a/Resources/VT_MOVENS.cur and b/Resources/VT_MOVENS.cur differ diff --git a/Resources/VT_MOVENS_BMP.bmp b/Resources/VT_MOVENS_BMP.bmp deleted file mode 100644 index fba6dd5ac..000000000 Binary files a/Resources/VT_MOVENS_BMP.bmp and /dev/null differ diff --git a/Resources/VT_MOVENW.cur b/Resources/VT_MOVENW.cur index a95776684..53bd58fe9 100644 Binary files a/Resources/VT_MOVENW.cur and b/Resources/VT_MOVENW.cur differ diff --git a/Resources/VT_MOVES.cur b/Resources/VT_MOVES.cur index b319725ac..723ae0025 100644 Binary files a/Resources/VT_MOVES.cur and b/Resources/VT_MOVES.cur differ diff --git a/Resources/VT_MOVESE.cur b/Resources/VT_MOVESE.cur index ce0a5ef7e..cb80fc7ff 100644 Binary files a/Resources/VT_MOVESE.cur and b/Resources/VT_MOVESE.cur differ diff --git a/Resources/VT_MOVESW.cur b/Resources/VT_MOVESW.cur index b2e753766..41e8c0b07 100644 Binary files a/Resources/VT_MOVESW.cur and b/Resources/VT_MOVESW.cur differ diff --git a/Resources/VT_MOVEW.cur b/Resources/VT_MOVEW.cur index ceaa02a9b..64d44c81a 100644 Binary files a/Resources/VT_MOVEW.cur and b/Resources/VT_MOVEW.cur differ diff --git a/Resources/VT_TICK_DARK.bmp b/Resources/VT_TICK_DARK.bmp deleted file mode 100644 index cf14fd21d..000000000 Binary files a/Resources/VT_TICK_DARK.bmp and /dev/null differ diff --git a/Resources/VT_TICK_LIGHT.bmp b/Resources/VT_TICK_LIGHT.bmp deleted file mode 100644 index bed0bf8a7..000000000 Binary files a/Resources/VT_TICK_LIGHT.bmp and /dev/null differ diff --git a/Resources/VT_UTILITIES.bmp b/Resources/VT_UTILITIES.bmp deleted file mode 100644 index de7fd9ac2..000000000 Binary files a/Resources/VT_UTILITIES.bmp and /dev/null differ diff --git a/Resources/VT_VERTSPLIT.cur b/Resources/VT_VERTSPLIT.cur index 420322089..1967a485a 100644 Binary files a/Resources/VT_VERTSPLIT.cur and b/Resources/VT_VERTSPLIT.cur differ diff --git a/Resources/VT_XP.bmp b/Resources/VT_XP.bmp deleted file mode 100644 index 357999965..000000000 Binary files a/Resources/VT_XP.bmp and /dev/null differ diff --git a/Resources/VT_XPBUTTONMINUS.bmp b/Resources/VT_XPBUTTONMINUS.bmp deleted file mode 100644 index 03323ae06..000000000 Binary files a/Resources/VT_XPBUTTONMINUS.bmp and /dev/null differ diff --git a/Resources/VT_XPBUTTONPLUS.bmp b/Resources/VT_XPBUTTONPLUS.bmp deleted file mode 100644 index 474ebdca9..000000000 Binary files a/Resources/VT_XPBUTTONPLUS.bmp and /dev/null differ diff --git a/Resources/VirtualTreeview-Icon.ico b/Resources/VirtualTreeview-Icon.ico deleted file mode 100644 index 8a120d1ec..000000000 Binary files a/Resources/VirtualTreeview-Icon.ico and /dev/null differ diff --git a/Resources/VirtualTreeview-Icon.png b/Resources/VirtualTreeview-Icon.png deleted file mode 100644 index 1ab55fcf8..000000000 Binary files a/Resources/VirtualTreeview-Icon.png and /dev/null differ diff --git a/Resources/components/tvirtualdrawtree.png b/Resources/components/tvirtualdrawtree.png new file mode 100644 index 000000000..8689363a6 Binary files /dev/null and b/Resources/components/tvirtualdrawtree.png differ diff --git a/Resources/components/tvirtualdrawtree_150.png b/Resources/components/tvirtualdrawtree_150.png new file mode 100644 index 000000000..16f816a99 Binary files /dev/null and b/Resources/components/tvirtualdrawtree_150.png differ diff --git a/Resources/components/tvirtualdrawtree_200.png b/Resources/components/tvirtualdrawtree_200.png new file mode 100644 index 000000000..cbc916657 Binary files /dev/null and b/Resources/components/tvirtualdrawtree_200.png differ diff --git a/Resources/components/tvirtualstringtree.png b/Resources/components/tvirtualstringtree.png new file mode 100644 index 000000000..bc7216bfc Binary files /dev/null and b/Resources/components/tvirtualstringtree.png differ diff --git a/Resources/components/tvirtualstringtree_150.png b/Resources/components/tvirtualstringtree_150.png new file mode 100644 index 000000000..b223b3075 Binary files /dev/null and b/Resources/components/tvirtualstringtree_150.png differ diff --git a/Resources/components/tvirtualstringtree_200.png b/Resources/components/tvirtualstringtree_200.png new file mode 100644 index 000000000..b24ffc810 Binary files /dev/null and b/Resources/components/tvirtualstringtree_200.png differ diff --git a/Resources/components/tvtheaderpopupmenu.png b/Resources/components/tvtheaderpopupmenu.png new file mode 100644 index 000000000..bfcb76a69 Binary files /dev/null and b/Resources/components/tvtheaderpopupmenu.png differ diff --git a/Resources/components/tvtheaderpopupmenu_150.png b/Resources/components/tvtheaderpopupmenu_150.png new file mode 100644 index 000000000..6ca27dce5 Binary files /dev/null and b/Resources/components/tvtheaderpopupmenu_150.png differ diff --git a/Resources/components/tvtheaderpopupmenu_200.png b/Resources/components/tvtheaderpopupmenu_200.png new file mode 100644 index 000000000..8aeb2e7ae Binary files /dev/null and b/Resources/components/tvtheaderpopupmenu_200.png differ diff --git a/Resources/createres.bat b/Resources/createres.bat deleted file mode 100644 index 9262aa22e..000000000 --- a/Resources/createres.bat +++ /dev/null @@ -1,3 +0,0 @@ -lazres ..\virtualtrees.lrs VT_VERTSPLIT.cur VT_HEADERSPLIT.cur VT_MOVEALL.cur VT_MOVEE.cur VT_MOVEEW.cur VT_MOVEN.cur VT_MOVENE.cur VT_MOVENS.cur VT_MOVENW.cur VT_MOVES.cur VT_MOVESE.cur VT_MOVESW.cur VT_MOVEW.cur VT_XPBUTTONPLUS.bmp VT_XPBUTTONMINUS.bmp VT_CHECK_LIGHT.bmp VT_CHECK_DARK.bmp VT_FLAT.bmp VT_TICK_DARK.bmp VT_TICK_LIGHT.bmp VT_UTILITIES.bmp VT_XP.bmp VT_MOVENS_BMP.bmp VT_MOVEEW_BMP.bmp VT_MOVEALL_BMP.bmp - -lazres ..\ideicons.lrs tvirtualdrawtree.xpm tvirtualstringtree.xpm tvtheaderpopupmenu.xpm \ No newline at end of file diff --git a/Resources/ideicons_list.txt b/Resources/ideicons_list.txt new file mode 100644 index 000000000..05dc3e2c0 --- /dev/null +++ b/Resources/ideicons_list.txt @@ -0,0 +1,9 @@ +components/tvirtualdrawtree.png +components/tvirtualdrawtree_150.png +components/tvirtualdrawtree_200.png +components/tvirtualstringtree.png +components/tvirtualstringtree_150.png +components/tvirtualstringtree_200.png +components/tvtheaderpopupmenu.png +components/tvtheaderpopupmenu_150.png +components/tvtheaderpopupmenu_200.png diff --git a/Resources/images-copyright.txt b/Resources/images-copyright.txt new file mode 100644 index 000000000..8c0031f07 --- /dev/null +++ b/Resources/images-copyright.txt @@ -0,0 +1,48 @@ +The following images (including equally named +files with appendix _150 and _200) were created by Roland Hahn. + +- laz_vt_check_dark.png +- laz_vt_check_dark_150.png +- laz_vt_check_dark_200.png +- laz_vt_check_light.png +- laz_vt_check_light_150.png +- laz_vt_check_light_200.png +- laz_vt_flat.png +- laz_vt_flat_150.png +- laz_vt_flat_200.png +- laz_vt_moveall_bmp.png +- laz_vt_moveall_bmp_150.png +- laz_vt_moveall_bmp_200.png +- laz_vt_moveew_bmp.png +- laz_vt_moveew_bmp_150.png +- laz_vt_moveew_bmp_200.png +- laz_vt_movens_bmp.png +- laz_vt_movens_bmp_150.png +- laz_vt_movens_bmp_200.png +- laz_vt_tick_dark.png +- laz_vt_tick_dark_150.png +- laz_vt_tick_dark_200.png +- laz_vt_tick_light.png +- laz_vt_tick_light_150.png +- laz_vt_tick_light_200.png +- laz_vt_utilities.png +- laz_vt_utilities_150.png +- laz_vt_utilities_200.png +- laz_vt_xp.png +- laz_vt_xpbuttonminus.png +- laz_vt_xpbuttonminus_150.png +- laz_vt_xpbuttonminus_200.png +- laz_vt_xpbuttonplus.png +- laz_vt_xpbuttonplus_150.png +- laz_vt_xpbuttonplus_200.png +- laz_vt_xp_150.png +- laz_vt_xp_200.png + +- components/tlazvirtualdrawtree.png +- components/tlazvirtualstringtree.png +- components/tlazvtheaderpopupmenu.png + +These images can be used freely without any restrictions. + +svg sources can be found on Lazarus Components and Code Repository, +folder image_sources. diff --git a/Resources/make_res.bat b/Resources/make_res.bat new file mode 100644 index 000000000..caf1d2cb0 --- /dev/null +++ b/Resources/make_res.bat @@ -0,0 +1,2 @@ +lazres.exe ..\virtualtrees.res @virtualtrees_list.txt +lazres.exe ..\ideicons.res @ideicons_list.txt diff --git a/Resources/tvirtualdrawtree.xpm b/Resources/tvirtualdrawtree.xpm deleted file mode 100644 index a723b41a3..000000000 --- a/Resources/tvirtualdrawtree.xpm +++ /dev/null @@ -1,35 +0,0 @@ -/* XPM */ -static char * tvirtualdrawtree_xpm[] = { -"24 24 8 1", -". c #000000", -"+ c None", -"@ c #808000", -"# c #20A080", -"$ c #808080", -"% c #C0A000", -"& c #C0C0C0", -"* c #FFFFFF", -"++++++..++++++++++++++++", -"+++++.&&.............+++", -"++++.***&&&&&&&&&&$$@.++", -"++++.************@$$$.++", -"+++.************@$$$$.++", -"++++...@********.$$$$.++", -"+++++++.........$$$$@+++", -"+++++++.$$$$$$$$***$.+++", -"+++++++.*******%***&.+++", -"+++++++.*.****%%%**$.+++", -"+++++++.*...*%%%%%*.++++", -"+++++++.*.**%%%%%%%.++++", -"++++++.**.***####**.++++", -"+++++.$**.**######*.++++", -"+++++.&**..*######*.++++", -"+++++.******######*.++++", -"+++++.*******####**&.+++", -"+...+.***.....******.+++", -"+.&&@....&&&&&.****$.+++", -"+.&&&&&&&&&&&&&.**&.++++", -"++.$&&&&&&&&&&&.&&&.++++", -"++.$$$$$$$$$$$$$.&.+++++", -"+++...............++++++", -"++++++++++++++++++++++++"}; diff --git a/Resources/tvirtualexplorertree.xpm b/Resources/tvirtualexplorertree.xpm deleted file mode 100644 index 850b44ac5..000000000 --- a/Resources/tvirtualexplorertree.xpm +++ /dev/null @@ -1,35 +0,0 @@ -/* XPM */ -static char * tvirtualexplorertree_xpm[] = { -"24 24 8 1", -". c #000000", -"+ c None", -"@ c #808000", -"# c #808080", -"$ c #C0C0C0", -"% c #E0E000", -"& c #E0E080", -"* c #FFFFFF", -"++++++..++++++++++++++++", -"+++++.$$.............+++", -"++++.***$$$$$$$$$$##@.++", -"++++.************@###.++", -"+++.************@####.++", -"++++...@********.####.++", -"+++++++.........####@+++", -"+++++++.########***#.+++", -"+++++++.***********$.+++", -"+++++++.**@@@@*****#.+++", -"+++++++.*@&&&&@****.++++", -"+++++++.*@&&&&%@@@*.++++", -"++++++.**@&&&%%%%@*.++++", -"+++++.#**@&%%%@%@@*.++++", -"+++++.$**@&%%@%@%@*.++++", -"+++++.***@@@@@@@@@*.++++", -"+++++.*************$.+++", -"+...+.***.....******.+++", -"+.$$@....$$$$$.****#.+++", -"+.$$$$$$$$$$$$$.**$.++++", -"++.#$$$$$$$$$$$.$$$.++++", -"++.#############.$.+++++", -"+++...............++++++", -"++++++++++++++++++++++++"}; diff --git a/Resources/tvirtualstringtree.xpm b/Resources/tvirtualstringtree.xpm deleted file mode 100644 index 69061226f..000000000 --- a/Resources/tvirtualstringtree.xpm +++ /dev/null @@ -1,35 +0,0 @@ -/* XPM */ -static char * tvirtualstringtree_xpm[] = { -"24 24 8 1", -". c #000000", -"+ c None", -"@ c #808000", -"# c #20A080", -"$ c #808080", -"% c #C0A000", -"& c #C0C0C0", -"* c #FFFFFF", -"++++++..++++++++++++++++", -"+++++.&&.............+++", -"++++.***&&&&&&&&&&$$@.++", -"++++.************@$$$.++", -"+++.************@$$$$.++", -"++++...@********.$$$$.++", -"+++++++.........$$$$@+++", -"+++++++.$$$$$$$$***$.+++", -"+++++++.***********&.+++", -"+++++++.*.**......*$.+++", -"+++++++.*....%%%%.*.++++", -"+++++++.*.**......*.++++", -"++++++.**.*********.++++", -"+++++.$**.**......*.++++", -"+++++.&**....####.*.++++", -"+++++.******......*.++++", -"+++++.*************&.+++", -"+...+.***.....******.+++", -"+.&&@....&&&&&.****$.+++", -"+.&&&&&&&&&&&&&.**&.++++", -"++.$&&&&&&&&&&&.&&&.++++", -"++.$$$$$$$$$$$$$.&.+++++", -"+++...............++++++", -"++++++++++++++++++++++++"}; diff --git a/Resources/tvtheaderpopupmenu.xpm b/Resources/tvtheaderpopupmenu.xpm deleted file mode 100644 index 6bc791c00..000000000 --- a/Resources/tvtheaderpopupmenu.xpm +++ /dev/null @@ -1,34 +0,0 @@ -/* XPM */ -static char * tvtheaderpopupmenu_xpm[] = { -"24 24 7 1", -". c #000000", -"+ c #000080", -"@ c None", -"# c #808000", -"$ c #808080", -"% c #C0C0C0", -"& c #FFFFFF", -"@@@@@@..@@@@@@@@@@@@@@@@", -"@@@@@.%%.............@@@", -"@@@@.&&&%%%%%%%%%%$$#.@@", -"@@@@.&&&&&&&&&&&&#$$$.@@", -"@@@.&&&&&&&&&&&&#$$$$.@@", -"@@@@...#&&&&&&&&.$$$$.@@", -"@@@@@@@.........$$$$#@@@", -"@@@@@@@.$$$$$$$$&&&$.@@@", -"@@@@@@@.$&&&&&&.&&&%.@@@", -"@@@@@@@.$&+++&&.&&&$.@@@", -"@@@@@@@.$&&&&&&.&&&.@@@@", -"@@@@@@@.$&+++++.&&&.@@@@", -"@@@@@@.&$+&&&+&+&&&.@@@@", -"@@@@@.$&$&++++&&+&&.@@@@", -"@@@@@.%&$&&&&+&&&+&.@@@@", -"@@@@@.&&$....+&&&&+.@@@@", -"@@@@@.&&&&&&&+&&&++++@@@", -"@...@.&&&....+&&&&+&.@@@", -"@.%%#....%%%%+&++&&+.@@@", -"@.%%%%%%%%%%%++$+&&+@@@@", -"@@.$%%%%%%%%%+%.%+&&+@@@", -"@@.$$$$$$$$$$$$$.+&&+@@@", -"@@@...............++@@@@", -"@@@@@@@@@@@@@@@@@@@@@@@@"}; diff --git a/Resources/virtualtrees_list.txt b/Resources/virtualtrees_list.txt new file mode 100644 index 000000000..0855a3e56 --- /dev/null +++ b/Resources/virtualtrees_list.txt @@ -0,0 +1,49 @@ +vt_check_dark.png +vt_check_dark_150.png +vt_check_dark_200.png +vt_check_light.png +vt_check_light_150.png +vt_check_light_200.png +vt_flat.png +vt_flat_150.png +vt_flat_200.png +vt_tick_dark.png +vt_tick_dark_150.png +vt_tick_dark_200.png +vt_tick_light.png +vt_tick_light_150.png +vt_tick_light_200.png +vt_utilities.png +vt_utilities_150.png +vt_utilities_200.png +vt_xp.png +vt_xp_150.png +vt_xp_200.png +vt_xpbuttonminus.png +vt_xpbuttonminus_150.png +vt_xpbuttonminus_200.png +vt_xpbuttonplus.png +vt_xpbuttonplus_150.png +vt_xpbuttonplus_200.png +vt_moveall_bmp.png +vt_moveall_bmp_150.png +vt_moveall_bmp_200.png +vt_moveew_bmp.png +vt_moveew_bmp_150.png +vt_moveew_bmp_200.png +vt_movens_bmp.png +vt_movens_bmp_150.png +vt_movens_bmp_200.png +vt_headersplit.cur +vt_moveall.cur +vt_movee.cur +vt_moveew.cur +vt_moven.cur +vt_movene.cur +vt_movens.cur +vt_movenw.cur +vt_moves.cur +vt_movese.cur +vt_movesw.cur +vt_movew.cur +vt_vertsplit.cur diff --git a/Resources/vt_check_dark.png b/Resources/vt_check_dark.png new file mode 100644 index 000000000..c1b527b5a Binary files /dev/null and b/Resources/vt_check_dark.png differ diff --git a/Resources/vt_check_dark_150.png b/Resources/vt_check_dark_150.png new file mode 100644 index 000000000..8a656b371 Binary files /dev/null and b/Resources/vt_check_dark_150.png differ diff --git a/Resources/vt_check_dark_200.png b/Resources/vt_check_dark_200.png new file mode 100644 index 000000000..ce37e7320 Binary files /dev/null and b/Resources/vt_check_dark_200.png differ diff --git a/Resources/vt_check_light.png b/Resources/vt_check_light.png new file mode 100644 index 000000000..0941734aa Binary files /dev/null and b/Resources/vt_check_light.png differ diff --git a/Resources/vt_check_light_150.png b/Resources/vt_check_light_150.png new file mode 100644 index 000000000..bb778801d Binary files /dev/null and b/Resources/vt_check_light_150.png differ diff --git a/Resources/vt_check_light_200.png b/Resources/vt_check_light_200.png new file mode 100644 index 000000000..4e6ea2934 Binary files /dev/null and b/Resources/vt_check_light_200.png differ diff --git a/Resources/vt_flat.png b/Resources/vt_flat.png new file mode 100644 index 000000000..dacc3df9d Binary files /dev/null and b/Resources/vt_flat.png differ diff --git a/Resources/vt_flat_150.png b/Resources/vt_flat_150.png new file mode 100644 index 000000000..f2b005d3f Binary files /dev/null and b/Resources/vt_flat_150.png differ diff --git a/Resources/vt_flat_200.png b/Resources/vt_flat_200.png new file mode 100644 index 000000000..b1175b696 Binary files /dev/null and b/Resources/vt_flat_200.png differ diff --git a/Resources/vt_moveall_bmp.png b/Resources/vt_moveall_bmp.png new file mode 100644 index 000000000..5468ba20b Binary files /dev/null and b/Resources/vt_moveall_bmp.png differ diff --git a/Resources/vt_moveall_bmp_150.png b/Resources/vt_moveall_bmp_150.png new file mode 100644 index 000000000..37a2ed3aa Binary files /dev/null and b/Resources/vt_moveall_bmp_150.png differ diff --git a/Resources/vt_moveall_bmp_200.png b/Resources/vt_moveall_bmp_200.png new file mode 100644 index 000000000..e80f7e4b1 Binary files /dev/null and b/Resources/vt_moveall_bmp_200.png differ diff --git a/Resources/vt_moveew_bmp.png b/Resources/vt_moveew_bmp.png new file mode 100644 index 000000000..b5820a81d Binary files /dev/null and b/Resources/vt_moveew_bmp.png differ diff --git a/Resources/vt_moveew_bmp_150.png b/Resources/vt_moveew_bmp_150.png new file mode 100644 index 000000000..47c02545b Binary files /dev/null and b/Resources/vt_moveew_bmp_150.png differ diff --git a/Resources/vt_moveew_bmp_200.png b/Resources/vt_moveew_bmp_200.png new file mode 100644 index 000000000..63557ade5 Binary files /dev/null and b/Resources/vt_moveew_bmp_200.png differ diff --git a/Resources/vt_movens_bmp.png b/Resources/vt_movens_bmp.png new file mode 100644 index 000000000..06d275b34 Binary files /dev/null and b/Resources/vt_movens_bmp.png differ diff --git a/Resources/vt_movens_bmp_150.png b/Resources/vt_movens_bmp_150.png new file mode 100644 index 000000000..71146c930 Binary files /dev/null and b/Resources/vt_movens_bmp_150.png differ diff --git a/Resources/vt_movens_bmp_200.png b/Resources/vt_movens_bmp_200.png new file mode 100644 index 000000000..254da34b6 Binary files /dev/null and b/Resources/vt_movens_bmp_200.png differ diff --git a/Resources/vt_tick_dark.png b/Resources/vt_tick_dark.png new file mode 100644 index 000000000..f2c8f7014 Binary files /dev/null and b/Resources/vt_tick_dark.png differ diff --git a/Resources/vt_tick_dark_150.png b/Resources/vt_tick_dark_150.png new file mode 100644 index 000000000..eba06a6f0 Binary files /dev/null and b/Resources/vt_tick_dark_150.png differ diff --git a/Resources/vt_tick_dark_200.png b/Resources/vt_tick_dark_200.png new file mode 100644 index 000000000..564b6fae2 Binary files /dev/null and b/Resources/vt_tick_dark_200.png differ diff --git a/Resources/vt_tick_light.png b/Resources/vt_tick_light.png new file mode 100644 index 000000000..020784140 Binary files /dev/null and b/Resources/vt_tick_light.png differ diff --git a/Resources/vt_tick_light_150.png b/Resources/vt_tick_light_150.png new file mode 100644 index 000000000..41e4f94d3 Binary files /dev/null and b/Resources/vt_tick_light_150.png differ diff --git a/Resources/vt_tick_light_200.png b/Resources/vt_tick_light_200.png new file mode 100644 index 000000000..3f13a53ac Binary files /dev/null and b/Resources/vt_tick_light_200.png differ diff --git a/Resources/vt_utilities.png b/Resources/vt_utilities.png new file mode 100644 index 000000000..a698c5243 Binary files /dev/null and b/Resources/vt_utilities.png differ diff --git a/Resources/vt_utilities_150.png b/Resources/vt_utilities_150.png new file mode 100644 index 000000000..ad4618428 Binary files /dev/null and b/Resources/vt_utilities_150.png differ diff --git a/Resources/vt_utilities_200.png b/Resources/vt_utilities_200.png new file mode 100644 index 000000000..7d68cdf46 Binary files /dev/null and b/Resources/vt_utilities_200.png differ diff --git a/Resources/vt_xp.png b/Resources/vt_xp.png new file mode 100644 index 000000000..decdc2886 Binary files /dev/null and b/Resources/vt_xp.png differ diff --git a/Resources/vt_xp_150.png b/Resources/vt_xp_150.png new file mode 100644 index 000000000..5650b543c Binary files /dev/null and b/Resources/vt_xp_150.png differ diff --git a/Resources/vt_xp_200.png b/Resources/vt_xp_200.png new file mode 100644 index 000000000..dcc37dc8c Binary files /dev/null and b/Resources/vt_xp_200.png differ diff --git a/Resources/vt_xpbuttonminus.png b/Resources/vt_xpbuttonminus.png new file mode 100644 index 000000000..14763c3f4 Binary files /dev/null and b/Resources/vt_xpbuttonminus.png differ diff --git a/Resources/vt_xpbuttonminus_150.png b/Resources/vt_xpbuttonminus_150.png new file mode 100644 index 000000000..6f4afc3c1 Binary files /dev/null and b/Resources/vt_xpbuttonminus_150.png differ diff --git a/Resources/vt_xpbuttonminus_200.png b/Resources/vt_xpbuttonminus_200.png new file mode 100644 index 000000000..b6d2fbef5 Binary files /dev/null and b/Resources/vt_xpbuttonminus_200.png differ diff --git a/Resources/vt_xpbuttonplus.png b/Resources/vt_xpbuttonplus.png new file mode 100644 index 000000000..da09eff71 Binary files /dev/null and b/Resources/vt_xpbuttonplus.png differ diff --git a/Resources/vt_xpbuttonplus_150.png b/Resources/vt_xpbuttonplus_150.png new file mode 100644 index 000000000..1a3cc0787 Binary files /dev/null and b/Resources/vt_xpbuttonplus_150.png differ diff --git a/Resources/vt_xpbuttonplus_200.png b/Resources/vt_xpbuttonplus_200.png new file mode 100644 index 000000000..9bc081721 Binary files /dev/null and b/Resources/vt_xpbuttonplus_200.png differ diff --git a/Source/VirtualTrees.BaseTree.pas b/Source/VirtualTrees.BaseTree.pas index 0722854a8..e04a4d581 100644 --- a/Source/VirtualTrees.BaseTree.pas +++ b/Source/VirtualTrees.BaseTree.pas @@ -29,7 +29,6 @@ interface DelphiCompat, LclExt, {$endif} - virtualpanningwindow, {$ifdef DEBUG_VTV} VirtualTrees.Logger, {$endif} @@ -571,7 +570,6 @@ TBaseVirtualTree = class abstract(TVTBaseAncestor) // miscellanous FPanningWindow: TForm; // Helper window for wheel panning - FPanningCursor: TVTCursor; // Current wheel panning cursor. FPanningImage: TIcon; // A little 32x32 bitmap to indicate the panning reference point. FLastClickPos: TPoint; // Used for retained drag start and wheel mouse scrolling. FOperationCount: Cardinal; // Counts how many nested long-running operations are in progress. @@ -1764,20 +1762,32 @@ function TreeFromNode(Node: PVirtualNode): TBaseVirtualTree; implementation uses - Winapi.MMSystem, // for animation timer (does not include further resources) - System.Math, - System.SyncObjs, - System.StrUtils, - Clipbrd, - Vcl.Consts, - Vcl.AxCtrls, // TOLEStream - Vcl.StdActns, // for standard action support - Vcl.GraphUtil, // accessibility helper class - VirtualTrees.StyleHooks, - VirtualTrees.WorkerThread, - VirtualTrees.ClipBoard, - VirtualTrees.Utils, - VirtualTrees.DragnDrop; + VirtualTrees, + StrUtils, Math, + {$ifdef EnableOLE} + //AxCtrls, // TOLEStream + {$endif} + {$ifdef Windows} + MMSystem, // for animation timer (does not include further resources) + {$else} + FakeMMSystem, + {$endif} + TypInfo, // for migration stuff + ActnList, + StdActns, // for standard action support + GraphType, + LCLProc + {$ifdef EnableAccessible} + , VirtualTrees.AccessibilityFactory + {$endif} + , GraphUtil + , ExtCtrls + , VirtualTrees.ClipBoard + , VirtualTrees.WorkerThread + , VirtualTrees.DragnDrop + , VirtualTrees.Export + , VirtualTrees.EditLink + , VirtualTrees.DrawTree; resourcestring // Localizable strings. @@ -2421,8 +2431,7 @@ destructor TBaseVirtualTree.Destroy(); TWorkerThread.ReleaseThreadReference(IsLibrary); // see issue #1245 {$endif} StopWheelPanning; - //lcl - FPanningWindow.Free; + CancelEditNode; // Just in case it didn't happen already release the edit link. FEditLink := nil; @@ -4210,17 +4219,17 @@ procedure TBaseVirtualTree.LoadPanningCursors; TheInstance := HINSTANCE; with Screen do begin - Cursors[crVT_MOVEALL]:=LoadCursor(TheInstance, 'VT_MOVEALL'); - Cursors[crVT_MOVEEW]:=LoadCursor(TheInstance, 'VT_MOVEEW'); - Cursors[crVT_MOVENS]:=LoadCursor(TheInstance, 'VT_MOVENS'); - Cursors[crVT_MOVENW]:=LoadCursor(TheInstance, 'VT_MOVENW'); - Cursors[crVT_MOVESW]:=LoadCursor(TheInstance, 'VT_MOVESW'); - Cursors[crVT_MOVESE]:=LoadCursor(TheInstance, 'VT_MOVESE'); - Cursors[crVT_MOVENE]:=LoadCursor(TheInstance, 'VT_MOVENE'); - Cursors[crVT_MOVEW]:=LoadCursor(TheInstance, 'VT_MOVEW'); - Cursors[crVT_MOVEE]:=LoadCursor(TheInstance, 'VT_MOVEE'); - Cursors[crVT_MOVEN]:=LoadCursor(TheInstance, 'VT_MOVEN'); - Cursors[crVT_MOVES]:=LoadCursor(TheInstance, 'VT_MOVES'); + Cursors[Ord(TPanningCursor.MOVEALL)]:=LoadCursor(TheInstance, 'VT_MOVEALL'); + Cursors[Ord(TPanningCursor.MOVEEW)]:=LoadCursor(TheInstance, 'VT_MOVEEW'); + Cursors[Ord(TPanningCursor.MOVENS)]:=LoadCursor(TheInstance, 'VT_MOVENS'); + Cursors[Ord(TPanningCursor.MOVENW)]:=LoadCursor(TheInstance, 'VT_MOVENW'); + Cursors[Ord(TPanningCursor.MOVESW)]:=LoadCursor(TheInstance, 'VT_MOVESW'); + Cursors[Ord(TPanningCursor.MOVESE)]:=LoadCursor(TheInstance, 'VT_MOVESE'); + Cursors[Ord(TPanningCursor.MOVENE)]:=LoadCursor(TheInstance, 'VT_MOVENE'); + Cursors[Ord(TPanningCursor.MOVEW)]:=LoadCursor(TheInstance, 'VT_MOVEW'); + Cursors[Ord(TPanningCursor.MOVEE)]:=LoadCursor(TheInstance, 'VT_MOVEE'); + Cursors[Ord(TPanningCursor.MOVEN)]:=LoadCursor(TheInstance, 'VT_MOVEN'); + Cursors[Ord(TPanningCursor.MOVES)]:=LoadCursor(TheInstance, 'VT_MOVES'); end; end; //---------------------------------------------------------------------------------------------------------------------- @@ -8854,7 +8863,7 @@ procedure TBaseVirtualTree.AdjustPanningCursor(X, Y: TDimension); // Loads the proper cursor which indicates into which direction scrolling is done. var - NewCursor: HCURSOR; + NewCursor: TPanningCursor; ScrollHorizontal, ScrollVertical: Boolean; @@ -8868,12 +8877,12 @@ procedure TBaseVirtualTree.AdjustPanningCursor(X, Y: TDimension); if ScrollHorizontal then begin if ScrollVertical then - NewCursor := crVT_MOVEALL + NewCursor := TPanningCursor.MOVEALL else - NewCursor := crVT_MOVEEW + NewCursor := TPanningCursor.MOVEEW; end else - NewCursor := crVT_MOVENS; + NewCursor := TPanningCursor.MOVENS; end else begin @@ -8886,32 +8895,32 @@ procedure TBaseVirtualTree.AdjustPanningCursor(X, Y: TDimension); begin // Left hand side. if Y - FLastClickPos.Y < -8 then - NewCursor := crVT_MOVENW + NewCursor := TPanningCursor.MOVENW else if Y - FLastClickPos.Y > 8 then - NewCursor := crVT_MOVESW + NewCursor := TPanningCursor.MOVESW else - NewCursor := crVT_MOVEW; + NewCursor := TPanningCursor.MOVEW; end else if X - FLastClickPos.X > 8 then begin // Right hand side. if Y - FLastClickPos.Y < -8 then - NewCursor := crVT_MOVENE + NewCursor := TPanningCursor.MOVENE else if Y - FLastClickPos.Y > 8 then - NewCursor := crVT_MOVESE + NewCursor := TPanningCursor.MOVESE else - NewCursor := crVT_MOVEE; + NewCursor := TPanningCursor.MOVEE; end else begin // Up or down. if Y < FLastClickPos.Y then - NewCursor := crVT_MOVEN + NewCursor := TPanningCursor.MOVEN else - NewCursor := crVT_MOVES; + NewCursor := TPanningCursor.MOVES; end; end else @@ -8919,23 +8928,23 @@ procedure TBaseVirtualTree.AdjustPanningCursor(X, Y: TDimension); begin // Only horizontal movement allowed. if X < FLastClickPos.X then - NewCursor := crVT_MOVEW + NewCursor := TPanningCursor.MOVEW else - NewCursor := crVT_MOVEE; + NewCursor := TPanningCursor.MOVEE; end else begin // Only vertical movement allowed. if Y < FLastClickPos.Y then - NewCursor := crVT_MOVEN + NewCursor := TPanningCursor.MOVEN else - NewCursor := crVT_MOVES; + NewCursor := TPanningCursor.MOVES; end; end; // Now load the cursor and apply it. {$ifdef Windows} - LCLIntf.SetCursor(Screen.Cursors[NewCursor]); + LCLIntf.SetCursor(Screen.Cursors[Ord(NewCursor)]); {$else} Cursor := NewCursor; {$endif} @@ -16033,40 +16042,58 @@ procedure TBaseVirtualTree.StartWheelPanning(Position: TPoint); TRANSPARENT_COLOR = $FFFFFE; //--------------- local function -------------------------------------------- - function CreatePanningWindow(const ImageName: TPanningCursor; const Pos: TPoint): TForm; + function CreatePanningWindow(const ImageName: String; const Pos: TPoint): TForm; var Form: TForm; Image: TImage; + Bitmap: TCustomBitmap; + FormRegion: HRGN; begin Form := TForm.Create(Self); Form.PopupMode := pmExplicit; Form.PopupParent := GetParentForm(Self); - Form.TransparentColor := True; - Form.TransparentColorValue := clBtnFace; + //lcl: no transparentColor (see bottom) + //Form.TransparentColor := True; + //Form.TransparentColorValue := clBtnFace; Form.Autosize := True; Form.BorderStyle := bsNone; + {$IFDEF DelphiStyleServices} Form.StyleElements := []; + {$ENDIF} Image := TImage.Create(Form); Image.Left := 0; Image.Top := 0; Image.Parent := Form; + LoadPanningCursors; - FPanningImage := TIcon.Create; - FPanningImage.Handle := LoadImage(0, MAKEINTRESOURCE(ImageName), IMAGE_CURSOR, ScaledPixels(32), ScaledPixels(32), LR_DEFAULTCOLOR or LR_LOADTRANSPARENT); - Image.Picture.Assign(FPanningImage); - Image.AutoSize := True; - Form.Left := Pos.X - (FPanningImage.Width div 2); //Left + Width div 2; - Form.Top := Pos.Y - (FPanningImage.Height div 2);//Top + Height div 2; + //lcl need get png files from resources and apply alpha with CreateRegion & SetWindowRgn + Bitmap := CreateBitmapFromResourceName(0, BuildResourceName(ImageName)); + try + Image.Width := Bitmap.Width; + Image.Height := Bitmap.Height; + Image.Canvas.Brush.Color := TRANSPARENT_COLOR; + Image.Canvas.FillRect(0, 0, Bitmap.Width, Bitmap.Height); + Image.Transparent := True; + Image.Canvas.Draw(0, 0, Bitmap); + finally + Bitmap.Free; + end; + CreateRegion(Image, clFuchsia, FormRegion); + SetWindowRgn(Form.Handle, FormRegion, True); + + Form.Left := Pos.X - (Image.Width div 2); //Left + Width div 2; + Form.Top := Pos.Y - (Image.Height div 2);//Top + Height div 2; Form.Position := poDesigned; // This prevents a focus chnage compare to using TForm.Show() ShowWindow(Form.Handle, SW_SHOWNOACTIVATE); Form.Visible := True; Exit(Form); end; + //--------------- end local function ---------------------------------------- var - ImageName: TPanningCursor; + ImageName: String; Pt: TPoint; begin @@ -16115,9 +16142,6 @@ procedure TBaseVirtualTree.StopWheelPanning; // Destroy the helper window. if Assigned(FPanningWindow) then FPanningWindow.Release; - DeleteObject(FPanningCursor); - FreeAndNil(FPanningImage); - FPanningCursor := 0; {$ifndef Windows} Cursor := crDefault; {$endif} diff --git a/Source/VirtualTrees.Types.pas b/Source/VirtualTrees.Types.pas index 2b11565a6..e84af1783 100644 --- a/Source/VirtualTrees.Types.pas +++ b/Source/VirtualTrees.Types.pas @@ -129,19 +129,6 @@ interface CaptionChunk = 3; // used by the string tree to store a node's caption UserChunk = 4; // used for data supplied by the application - //Panning Cursors - crVT_MOVEALL = TCursor(64); - crVT_MOVEEW = TCursor(65); - crVT_MOVENS = TCursor(66); - crVT_MOVENW = TCursor(67); - crVT_MOVESW = TCursor(68); - crVT_MOVENE = TCursor(69); - crVT_MOVESE = TCursor(70); - crVT_MOVEW = TCursor(71); - crVT_MOVEE = TCursor(72); - crVT_MOVEN = TCursor(73); - crVT_MOVES = TCursor(74); - {$if defined(LCLCarbon) or defined(LCLCocoa)} ssCtrl = ssMeta; // Mac OS X fix {$endif} @@ -198,17 +185,17 @@ EVirtualTreeError = class(Exception); // Taken from: https://learn.microsoft.com/en-us/windows/win32/menurc/about-cursors // To be used with: LoadCursor(0, MAKEINTRESOURCE(TPanningCursor.MoveAll)) TPanningCursor = ( - MoveAll = 32654, - MoveNS = 32652, - MoveEW = 32653, - MoveN = 32655, - MoveNE = 32660, - MoveE = 32658, - MoveSE = 32662, - MoveS = 32656, - MoveSW = 32661, - MoveW = 32657, - MoveNW = 32659 + MoveAll = TCursor(64), + MoveNS = TCursor(66), + MoveEW = TCursor(65), + MoveN = TCursor(73), + MoveNE = TCursor(69), + MoveE = TCursor(72), + MoveSE = TCursor(70), + MoveS = TCursor(74), + MoveSW = TCursor(68), + MoveW = TCursor(71), + MoveNW = TCursor(67) ); TSmartAutoFitType = ( diff --git a/Source/VirtualTrees.Utils.pas b/Source/VirtualTrees.Utils.pas index 5d242468c..4a43d4289 100644 --- a/Source/VirtualTrees.Utils.pas +++ b/Source/VirtualTrees.Utils.pas @@ -29,7 +29,7 @@ interface {$I VTConfig.inc} uses - DelphiCompat, Types, LCLIntf, LCLType, Graphics, LclExt, SysUtils, + DelphiCompat, Types, LCLIntf, LCLType, Graphics, LclExt, SysUtils, ExtCtrls, VirtualTrees.Types, StrUtils, Math; type @@ -153,6 +153,8 @@ function CalculateScanline(Bits: Pointer; Width, Height, Row: Integer): Pointer; function GetBitmapBitsFromBitmap(Bitmap: HBITMAP): Pointer; +procedure CreateRegion(const AIm: TImage; const AMaskColor: TColor; out ARegion: HRGN); + implementation {$IFDEF DelphiSupport} @@ -863,4 +865,41 @@ function Divide(const Dimension: Integer; const DivideBy: Integer): Integer; Result:= Dimension div DivideBy; end; +//---------------------------------------------------------------------------------------------------------------------- + +procedure CreateRegion(const AIm: TImage; const AMaskColor: TColor; out ARegion: HRGN); +var + X1, X2, Y:integer; + Color: TColor; + DeleteRegion: HRGN; +begin + ARegion := CreateRectRgn(0, 0, AIm.Width, AIm.Height); + for Y := 0 to AIm.Picture.Bitmap.Height - 1 do + begin + X1 := 0; X2 := 0; + repeat + if (X2 <= AIm.Picture.Bitmap.Width - 1) and (Y <= AIm.Picture.Bitmap.Height - 1) then + Color := AIm.Picture.Bitmap.Canvas.Pixels[X2, Y] + else + Color := -1; + if (Color <> AMaskColor) then + begin + if (X1 <> X2) then + begin + DeleteRegion := CreateRectRgn(X1, Y, X2, Y + 1); + try + CombineRgn(ARegion, ARegion, DeleteRegion, RGN_DIFF); + finally + DeleteObject(DeleteRegion); + end; + end; + Inc(X2); + X1 := X2; + end + else + Inc(X2); + until (Color = -1); + end; +end; + end. diff --git a/Source/VirtualTrees.res b/Source/VirtualTrees.res index 6b1ef004b..38c061d40 100644 Binary files a/Source/VirtualTrees.res and b/Source/VirtualTrees.res differ diff --git a/Source/ideicons.res b/Source/ideicons.res index 3e0d22b92..67000ab33 100644 Binary files a/Source/ideicons.res and b/Source/ideicons.res differ diff --git a/Source/units/carbon/virtualpanningwindow.pas b/Source/units/carbon/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/carbon/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/cocoa/virtualpanningwindow.pas b/Source/units/cocoa/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/cocoa/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/dummyvirtualpanningwindow.inc b/Source/units/dummyvirtualpanningwindow.inc deleted file mode 100644 index 92d4423be..000000000 --- a/Source/units/dummyvirtualpanningwindow.inc +++ /dev/null @@ -1,61 +0,0 @@ -{$warnings off} -{$hints off} - -{$mode objfpc}{$H+} - -interface - -{$I VTConfig.inc} - -uses - LCLType, Graphics, Classes, SysUtils, WSReferences; - -type - - { TVirtualPanningWindow } - - TVirtualPanningWindow = class - private - FHandle: TLCLHandle; - FOwnerHandle: TLCLHandle; - FImage: TBitmap; - procedure HandlePaintMessage; - public - procedure Start(OwnerHandle: TLCLHandle; const Position: TPoint); - procedure Stop; - procedure Show(ClipRegion: HRGN); - property Image: TBitmap read FImage; - property Handle: TLCLHandle read FHandle; - end; - -implementation - -{$ifdef DEBUG_VTV} -uses - VirtualTrees.Logger; -{$endif} - -{ TVirtualPanningWindow } - -procedure TVirtualPanningWindow.HandlePaintMessage; -begin -end; - -procedure TVirtualPanningWindow.Start(OwnerHandle: TLCLHandle; const Position: TPoint); -begin - FImage := TBitmap.Create; -end; - -procedure TVirtualPanningWindow.Stop; -begin - FImage.Free; - FImage := nil; -end; - -procedure TVirtualPanningWindow.Show(ClipRegion: HRGN); -begin - {$ifdef DEBUG_VTV}Logger.SendBitmap([lcPanning],'Panning Image',FImage);{$endif} -end; - -end. - diff --git a/Source/units/gtk/virtualpanningwindow.pas b/Source/units/gtk/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/gtk/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/gtk2/virtualpanningwindow.pas b/Source/units/gtk2/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/gtk2/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/gtk3/virtualpanningwindow.pas b/Source/units/gtk3/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/gtk3/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/qt/virtualpanningwindow.pas b/Source/units/qt/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/qt/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/qt5/virtualpanningwindow.pas b/Source/units/qt5/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/qt5/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/qt6/virtualpanningwindow.pas b/Source/units/qt6/virtualpanningwindow.pas deleted file mode 100644 index 5bf13e00e..000000000 --- a/Source/units/qt6/virtualpanningwindow.pas +++ /dev/null @@ -1,3 +0,0 @@ -unit virtualpanningwindow; - -{$i ../dummyvirtualpanningwindow.inc} diff --git a/Source/units/win32/virtualpanningwindow.pas b/Source/units/win32/virtualpanningwindow.pas deleted file mode 100644 index 5e9d3f5c4..000000000 --- a/Source/units/win32/virtualpanningwindow.pas +++ /dev/null @@ -1,119 +0,0 @@ -unit virtualpanningwindow; - -{Adapted from VirtualTrees by Luiz Américo to work in LCL/Lazarus} - -{$mode objfpc}{$H+} - -interface - -{$I VTConfig.inc} - -uses - Windows, Graphics, Classes, SysUtils; - -type - { TVirtualPanningWindow } - - TVirtualPanningWindow = class - private - FHandle: THandle; - FImage: TBitmap; - procedure HandlePaintMessage; - public - procedure Start(OwnerHandle: THandle; const Position: TPoint); - procedure Stop; - procedure Show(ClipRegion: HRGN); - property Image: TBitmap read FImage; - property Handle: THandle read FHandle; - end; - -implementation - -{$ifdef DEBUG_VTV} -uses - VirtualTrees.Logger; -{$endif} - -function PanningWindowProc(Window: HWnd; Msg: UInt;WPara: WParam; LPara: LParam): LResult; stdcall; -var - PanningObject: TVirtualPanningWindow; -begin - if Msg = WM_PAINT then - begin - PanningObject:=TVirtualPanningWindow(GetWindowLongPtrW(Window,GWL_USERDATA)); - if Assigned(PanningObject) then - PanningObject.HandlePaintMessage; - end - else - DefWindowProc(Window,Msg,WPara,LPara); -end; - -var - PanningWindowClass: TWndClass = ( - style: 0; - lpfnWndProc: @PanningWindowProc; - cbClsExtra: 0; - cbWndExtra: 0; - hInstance: 0; - hIcon: 0; - hCursor: 0; - hbrBackground: 0; - lpszMenuName: nil; - lpszClassName: 'VTPanningWindow' - ); - -{ TVirtualPanningWindow } - -procedure TVirtualPanningWindow.HandlePaintMessage; -var - PS: PaintStruct; -begin - BeginPaint(FHandle, PS); - BitBlt(PS.hdc,0,0,FImage.Width,FImage.Height,FImage.Canvas.Handle,0,0,SRCCOPY); - EndPaint(FHandle, PS); -end; - - -procedure TVirtualPanningWindow.Start(OwnerHandle: THandle; const Position: TPoint); -var - TempClass: TWndClass; - Size: TSize; -begin - // Register the helper window class. - if not GetClassInfo(HInstance, PanningWindowClass.lpszClassName, TempClass) then - begin - PanningWindowClass.hInstance := HInstance; - Windows.RegisterClass(PanningWindowClass); - end; - - // Create the helper window and show it at the given position without activating it. - Size.CX := MulDiv(32, ScreenInfo.PixelsPerInchX, 96); - Size.CY := MulDiv(32, ScreenInfo.PixelsPerInchY, 96); - with Position do - FHandle := CreateWindowEx(WS_EX_TOOLWINDOW, PanningWindowClass.lpszClassName, - nil, WS_POPUP, X - Size.CX div 2, Y - Size.CY div 2, Size.CX, Size.CY, - OwnerHandle, 0, HInstance, nil); - - SetWindowLongPtrW(FHandle,GWL_USERDATA,PtrInt(Self)); - - FImage := TBitmap.Create; -end; - -procedure TVirtualPanningWindow.Stop; -begin - // Destroy the helper window. - DestroyWindow(FHandle); - FImage.Free; - FImage := nil; -end; - -procedure TVirtualPanningWindow.Show(ClipRegion: HRGN); -begin - {$ifdef DEBUG_VTV}{Logger.SendBitmap([lcPanning],'Panning Image',FImage);}{$endif} - //todo: move SetWindowRgn to DelphiCompat - SetWindowRgn(FHandle, ClipRegion, False); - ShowWindow(FHandle, SW_SHOWNOACTIVATE); -end; - -end. -