diff --git a/components/virtualtreeview-unstable/demos/advanced/GridDemo.lfm b/components/virtualtreeview-unstable/demos/advanced/GridDemo.lfm index f55eb82fc..b06afe64b 100644 --- a/components/virtualtreeview-unstable/demos/advanced/GridDemo.lfm +++ b/components/virtualtreeview-unstable/demos/advanced/GridDemo.lfm @@ -3,8 +3,6 @@ object GridForm: TGridForm Height = 432 Top = 353 Width = 736 - HorzScrollBar.Page = 735 - VertScrollBar.Page = 431 ActiveControl = VST5 Caption = 'GridForm' ClientHeight = 432 @@ -12,6 +10,7 @@ object GridForm: TGridForm Font.Height = -13 Font.Name = 'MS Sans Serif' OnCreate = FormCreate + LCLVersion = '0.9.27' object Label15: TLabel Left = 524 Height = 153 @@ -20,7 +19,6 @@ object GridForm: TGridForm Anchors = [akTop, akRight] AutoSize = False Caption = 'This sample demonstrates the grid extensions introduced in Virtual Treeview. The main difference to normal mode is the way cell content is handled (editing, selection etc.). In Grid mode always the entire cell is used. Another point is the key handling .' - Color = clNone ParentColor = False WordWrap = True end @@ -32,7 +30,6 @@ object GridForm: TGridForm Anchors = [akTop, akRight] AutoSize = False Caption = 'The main column in this sample is reduced to an indicator and is set as a fixed column.' - Color = clNone ParentColor = False WordWrap = True end @@ -67,6 +64,7 @@ object GridForm: TGridForm Header.Style = hsFlatButtons HintAnimation = hatFade HintMode = hmTooltip + ParentFont = False ParentShowHint = False RootNodeCount = 100 ScrollBarOptions.AlwaysVisible = True @@ -117,10 +115,10 @@ object GridForm: TGridForm end> end object GridLineCheckBox: TCheckBox - Left = 542 - Height = 24 - Top = 362 - Width = 141 + Left = 556 + Height = 22 + Top = 364 + Width = 127 Anchors = [akRight, akBottom] Caption = 'Toggle grid lines' Checked = True @@ -132,261 +130,583 @@ object GridForm: TGridForm left = 22 top = 36 Bitmap = { - 6C691200000010000000100000009C0100002F2A2058504D202A2F0A73746174 - 69632063686172202A677261706869635B5D203D207B0A223136203136203320 - 31222C0A222E2063204E6F6E65222C0A222C20632023303030303030222C0A22 - 2D20632023464646464646222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E22 - 2C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2C2C2C2C2C2C - 2C2C2E2E2E2E2E222C0A222E2E2E2C2D2D2D2D2D2D2C2C2E2E2E2E222C0A222E - 2E2E2C2D2D2D2D2D2D2C2D2C2E2E2E222C0A222E2E2E2C2D2D2D2D2D2D2C2C2C - 2C2E2E222C0A222E2E2E2C2D2D2D2D2D2D2D2D2D2C2E2E222C0A222E2E2E2C2D - 2D2D2D2D2D2D2D2D2C2E2E222C0A222E2E2E2C2D2D2D2D2D2D2D2D2D2C2E2E22 - 2C0A222E2E2E2C2D2D2D2D2D2D2D2D2D2C2E2E222C0A222E2E2E2C2D2D2D2D2D - 2D2D2D2D2C2E2E222C0A222E2E2E2C2D2D2D2D2D2D2D2D2D2C2E2E222C0A222E - 2E2E2C2D2D2D2D2D2D2D2D2D2C2E2E222C0A222E2E2E2C2D2D2D2D2D2D2D2D2D - 2C2E2E222C0A222E2E2E2C2C2C2C2C2C2C2C2C2C2C2E2E222C0A222E2E2E2E2E - 2E2E2E2E2E2E2E2E2E2E2E227D0AAB0100002F2A2058504D202A2F0A73746174 - 69632063686172202A677261706869635B5D203D207B0A223136203136203420 - 31222C0A222E2063204E6F6E65222C0A222C20632023303030303030222C0A22 - 2D20632023464646464646222C0A222A20632023303030303830222C0A222E2E - 2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E - 2E2E222C0A222E2C2C2C2C2C2C2E2E2E2E2E2E2E2E2E222C0A222E2C2D2D2D2D - 2C2C2E2E2E2E2E2E2E2E222C0A222E2C2D2D2D2D2C2D2C2E2E2E2E2E2E2E222C - 0A222E2C2D2C2C2D2C2A2A2A2A2A2A2E2E2E222C0A222E2C2D2D2D2D2D2A2D2D - 2D2D2A2A2E2E222C0A222E2C2D2C2C2C2C2A2D2D2D2D2A2D2A2E222C0A222E2C - 2D2D2D2D2D2A2D2C2C2D2A2A2A2A222C0A222E2C2D2C2C2C2C2A2D2D2D2D2D2D - 2D2A222C0A222E2C2D2D2D2D2D2A2D2C2C2C2C2C2D2A222C0A222E2C2C2C2C2C - 2C2A2D2D2D2D2D2D2D2A222C0A222E2E2E2E2E2E2E2A2D2C2C2C2C2C2D2A222C - 0A222E2E2E2E2E2E2E2A2D2D2D2D2D2D2D2A222C0A222E2E2E2E2E2E2E2A2A2A - 2A2A2A2A2A2A222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0AD80100 - 002F2A2058504D202A2F0A7374617469632063686172202A677261706869635B - 5D203D207B0A22313620313620372031222C0A222E2063204E6F6E65222C0A22 - 2C20632023303030303030222C0A222D20632023464646463030222C0A222A20 - 632023383038303830222C0A226120632023383038303030222C0A2262206320 - 23303030303830222C0A226320632023464646464646222C0A222E2E2E2E2E2E - 2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2C2C2C2C2E2E2E2E2E2E222C - 0A222E2E2C2C2C2C2C2D2D2C2C2C2C2C2E2E222C0A222E2C2A612A2C2D2C2C2D - 2C612A612C2E222C0A222E2C612A2C2E2E2E2E2E2E2C612A2C2E222C0A222E2C - 2A612C2C2C2C2C2C2C2C2A612C2E222C0A222E2C612A612A612A612A612A612A - 2C2E222C0A222E2C2A612A612A626262626262622C2E222C0A222E2C612A612A - 6162636363636362622E222C0A222E2C2A612A612A626363636363626362222C - 0A222E2C612A612A61626362626263626262222C0A222E2C2A612A612A626363 - 636363636362222C0A222E2C612A612A61626362626262626362222C0A222E2E - 2C2C2C2C2C626363636363636362222C0A222E2E2E2E2E2E2E62626262626262 - 6262222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0ABA0100002F2A20 - 58504D202A2F0A7374617469632063686172202A677261706869635B5D203D20 - 7B0A22313620313620352031222C0A222E20632023464646463030222C0A222C - 2063204E6F6E65222C0A222D20632023383038303830222C0A222A2063202330 - 3030303030222C0A226120632023464646464646222C0A222E2C2C2D2E2C2C2D - 2A2A2A2C2C2C2C2C222C0A222D2E2C2D612C2D2E61612A2A2C2C2C2C222C0A22 - 2C2D2E2D2E2D2E6161612A612A2C2C2C222C0A222C2E2D2E612D2D2D2D612A61 - 612A2C2C222C0A222D2D2D612E2E616161612A2A2A2A2A2C222C0A222C2C612D - 61612D2A2A61616161612A2C222C0A222D2C2C2D2E6161616161616161612A2C - 222C0A222C2C2C2D612A2A2A2A2A2A2A61612A2C222C0A222C2C2C2A61616161 - 6161616161612A2C222C0A222C2C2C2A612A2A2A2A2A2A2A61612A2C222C0A22 - 2C2C2C2A616161616161616161612A2C222C0A222C2C2C2A612A2A2A2A2A2A2A - 61612A2C222C0A222C2C2C2A616161616161616161612A2C222C0A222C2C2C2A - 616161616161616161612A2C222C0A222C2C2C2A2A2A2A2A2A2A2A2A2A2A2A2C - 222C0A222C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C227D0A9C0100002F2A205850 - 4D202A2F0A7374617469632063686172202A677261706869635B5D203D207B0A - 22313620313620332031222C0A222E2063204E6F6E65222C0A222C2063202338 - 3030303030222C0A222D20632023464646464646222C0A222E2E2E2E2E2E2E2E - 2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A22 - 2E2C2C2D2E2E2E2E2E2E2E2E2C2C2D2E222C0A222E2C2C2C2C2D2E2E2E2E2E2C - 2C2D2E2E222C0A222E2E2C2C2C2C2D2E2E2E2C2C2D2E2E2E222C0A222E2E2E2E - 2C2C2C2D2E2C2D2E2E2E2E2E222C0A222E2E2E2E2E2C2C2C2C2C2D2E2E2E2E2E - 222C0A222E2E2E2E2E2E2C2C2C2D2E2E2E2E2E2E222C0A222E2E2E2E2E2C2C2C - 2C2C2D2E2E2E2E2E222C0A222E2E2E2E2C2C2C2D2E2C2C2D2E2E2E2E222C0A22 - 2E2E2E2C2C2C2D2E2E2E2C2C2D2E2E2E222C0A222E2E2C2C2C2D2E2E2E2E2E2C - 2D2E2E2E222C0A222E2E2C2C2C2D2E2E2E2E2E2E2C2D2E2E222C0A222E2E2E2C - 2D2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2C2D2E - 222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0AC90100002F2A205850 - 4D202A2F0A7374617469632063686172202A677261706869635B5D203D207B0A - 22313620313620362031222C0A222E2063204E6F6E65222C0A222C2063202330 - 3030303830222C0A222D20632023464646464646222C0A222A20632023303030 - 303030222C0A226120632023383038303830222C0A2262206320234646464630 - 30222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222C2C2C2C2C2C2C - 2C2C2C2C2C2C2C2E2E222C0A222C2D2C2C2C2C2C2C2C2C2C2C2C2C2E2E222C0A - 222C2C2C2C2C2C2C2C2C2C2C2C2C2A2E2E222C0A222A2E2E2E2A2D2D2D2D2D2D - 2D2D2A2E2E222C0A222A2E2E2E2A2D2D2D2D2D2D2D2D2A2E2E222C0A222A2E2E - 2E2A2D2D6161612D2D2D2A2E2E222C0A222A2E2E2E2A2D612E622E612D2D2A2E - 2E222C0A222A2E2E2E2A612E622E6261616161612E222C0A222A2E2E2E2A612D - 2D2D2D2D2D2D2D612A222C0A222A2E2E2E2A612D622E622E622E62612A222C0A - 222A2E2E2E2A612D2E622E622E622E612A222C0A222A2A2A2A2A612D622E622E - 622E62612A222C0A222E2E2E2E2E616161616161616161612A222C0A222E2E2E - 2E2E2E2A2A2A2A2A2A2A2A2A2A222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E - 2E227D0AC90100002F2A2058504D202A2F0A7374617469632063686172202A67 - 7261706869635B5D203D207B0A22313620313620362031222C0A222E2063204E - 6F6E65222C0A222C20632023303030303830222C0A222D206320233030303030 - 30222C0A222A20632023464646464646222C0A22612063202338303830383022 - 2C0A226220632023303046464646222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E - 2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222C2C2C2C2C2C - 2C2C2C2E2E2E2E2E2E2E222C0A222C2C2C2C2C2C2C2C2C2E2E2E2E2E2E2E222C - 0A222D2A2A2A2A2A2A2A2D2E2D2E2E2E2E2E222C0A222D2A61616161612A2D2E - 2D2D2E2E2E2E222C0A222D2A2A2A2A2A2A2A2D2E2D622D2E2E2E222C0A222D2A - 61612D2D2D2D2D2D2D62622D2E2E222C0A222D2A2A2A2D626262626262626262 - 2D2E222C0A222D2D2D2D2D626262626262626262622D222C0A222E2E2E2E2D62 - 62626262626262622D2E222C0A222E2E2E2E2D2D2D2D2D2D2D62622D2E2E222C - 0A222E2E2E2E2E2E2E2E2E2E2D622D2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E - 2D2D2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2D2E2E2E2E2E222C0A222E2E - 2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0AAB0100002F2A2058504D202A2F0A73 - 74617469632063686172202A677261706869635B5D203D207B0A223136203136 - 20342031222C0A222E2063204E6F6E65222C0A222C2063202330303030303022 - 2C0A222D20632023303030303830222C0A222A20632023464646464646222C0A - 222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2C2C2C2C - 2C2C2E2D2D222C0A222E2E2E2E2E2E2C2E2E2E2E2E2E2C2D2D222C0A222E2E2E - 2E2E2C2E2C2E2E2E2E2E2E2D2D222C0A222C2C2C2C2C2E2C2E2C2E2E2E2E2E2D - 2D222C0A222C2A2A2C2E2C2E2C2E2C2E2E2E2C2D2D222C0A222C2A2C2E2C2A2C - 2E2C2E2C2C2C2E2D2D222C0A222C2A2A2C2A2A2A2C2E2C2A2C2E2E2E2D222C0A - 222C2A2A2A2A2A2A2A2C2A2A2C2E2E2E2E222C0A222C2A2A2A2A2A2A2A2A2A2A - 2C2E2E2E2E222C0A222C2A2C2C2A2C2C2C2C2C2A2C2E2E2E2E222C0A222C2A2A - 2A2A2A2A2A2A2A2A2C2E2E2E2E222C0A222C2A2C2C2A2C2C2C2C2C2A2C2E2E2E - 2E222C0A222C2A2A2A2A2A2A2A2A2A2A2C2E2E2E2E222C0A222C2C2C2C2C2C2C - 2C2C2C2C2C2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0A - F60100002F2A2058504D202A2F0A7374617469632063686172202A6772617068 - 69635B5D203D207B0A22313620313620392031222C0A222E2063204E6F6E6522 - 2C0A222C20632023383038303830222C0A222D20632023303030304646222C0A - 222A20632023464646464646222C0A226120632023303038303030222C0A2262 - 20632023303030303030222C0A226320632023464646463030222C0A22642063 - 2023303038303830222C0A226520632023303030303830222C0A222E2E2E2E2E - 2C2C2C2C2C2E2E2E2E2E2E222C0A222E2E2E2C2C2D2D2A2E6162622E2E2E2E22 - 2C0A222E2E2C2D2D2E2A2E61616161622E2E2E222C0A222E2C2D2A2E2A2C2C2C - 2C2C2C2C622E2E222C0A222E2C2D2D2A2E2C2A2A2A632A2C2C2E2E222C0A2262 - 2D2D2E61612C2A632A2A2A2C2A2C2E222C0A22622D2D6161612C2A2A2A632A62 - 626262222C0A22622D2D6161612C2A636464642C2A2C62222C0A22622D2D2D61 - 612C2A642A2C61652A2C62222C0A22622D2D2D2D2D2C2A642C612D652A2C6222 - 2C0A222E622D2D2D2D2C2A642D2D2D652A2C62222C0A222E622D2D2D2D2C2A63 - 6565652C2A2C62222C0A222E2E622D2D2D2C2A2A2A632A2A2A2C62222C0A222E - 2E2E62622D2C2A632A2A2A632A2C62222C0A222E2E2E2E2E622C2C2C2C2C2C2C - 2C2C62222C0A222E2E2E2E2E2E62626262626262626262227D0A9C0100002F2A - 2058504D202A2F0A7374617469632063686172202A677261706869635B5D203D - 207B0A22313620313620332031222C0A222E2063204E6F6E65222C0A222C2063 - 2023464646464646222C0A222D20632023303038303030222C0A222E2E2E2E2E - 2E2E2E2E2E2E2E2E2E2E2E222C0A222E2C2C2C2C2C2C2C2C2C2C2C2C2C2C2E22 - 2C0A222E2C2C2C2C2C2C2C2D2C2C2C2C2C2C2E222C0A222E2C2C2C2C2C2C2C2D - 2D2C2C2C2C2C2E222C0A222E2C2C2C2C2D2D2D2D2D2D2C2C2C2C2E222C0A222E - 2C2C2C2D2C2C2C2D2D2C2C2C2C2C2E222C0A222E2C2C2C2D2C2C2C2D2C2C2C2C - 2C2C2E222C0A222E2C2C2C2D2C2C2C2C2C2C2C2C2C2C2E222C0A222E2C2C2C2C - 2C2C2C2C2C2C2D2C2C2C2E222C0A222E2C2C2C2C2C2C2D2C2C2C2D2C2C2C2E22 - 2C0A222E2C2C2C2C2C2D2D2C2C2C2D2C2C2C2E222C0A222E2C2C2C2C2D2D2D2D - 2D2D2C2C2C2C2E222C0A222E2C2C2C2C2C2D2D2C2C2C2C2C2C2C2E222C0A222E - 2C2C2C2C2C2C2D2C2C2C2C2C2C2C2E222C0A222E2C2C2C2C2C2C2C2C2C2C2C2C - 2C2C2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0ABA0100002F2A - 2058504D202A2F0A7374617469632063686172202A677261706869635B5D203D - 207B0A22313620313620352031222C0A222E2063204E6F6E65222C0A222C2063 - 2023383038303830222C0A222D20632023303030303030222C0A222A20632023 - 464646464646222C0A226120632023303030303830222C0A222E2E2E2E2E2E2E - 2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2C2C2C2C2C2C2D2E2E2E2E222C0A - 222E2E2E2E2E2C2A2A2A2A2A2D2E2E2E2E222C0A222E2E2E2E2E2C2A2C2C2C2C - 2C2C2D2E2E222C0A22612E2E2E2E2C2A2C2A2A2A2A2A2D2E2E222C0A2261612E - 2E2E2C2A2C2A2C2C2C2C2C2C2D222C0A226161612E2E2C2A2C2A2C2A2A2A2A2A - 2D222C0A22616161612E2C2A2C2A2C2A6161612A2D222C0A226161612E2E2C2A - 2C2A2C2A2A2A2A2A2D222C0A2261612E2E2E2D2D2C2A2C2A6161612A2D222C0A - 22612E2E2E2E2E2E2C2A2C2A2A2A2A2A2D222C0A222E2E2E2E2E2E2E2D2D2C2A - 6161612A2D222C0A222E2E2E2E2E2E2E2E2E2C2A2A2A2A2A2D222C0A222E2E2E - 2E2E2E2E2E2E2D2D2D2D2D2D2D222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E - 2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0AC90100002F2A2058 - 504D202A2F0A7374617469632063686172202A677261706869635B5D203D207B - 0A22313620313620362031222C0A222E2063204E6F6E65222C0A222C20632023 - 383038303830222C0A222D20632023464646463030222C0A222A206320234330 - 43304330222C0A226120632023464646464646222C0A22622063202330303030 - 3030222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2C2C2C - 2C2C2E2E2E2E2E2E2E2E222C0A222E2E2C2D2A2D2A2D2C2E2E2E2E2E2E2E222C - 0A222E2C2D2A2D2A2D2A2D2C2C2C2C2C2C2E222C0A222E2C6161616161616161 - 616161612C62222C0A222E2C612D2A2D2A2D2A2D2A2D2A2D2C62222C0A222E2C - 612A2D2A2D2A2D2A2D2A2D2A2C62222C0A222E2C612D2A2D2A2D2A2D2A2D2A2D - 2C62222C0A222E2C612A2D2A2D2A2D2A2D2A2D2A2C62222C0A222E2C612D2A2D - 2A2D2A2D2A2D2A2D2C62222C0A222E2C612A2D2A2D2A2D2A2D2A2D2A2C62222C - 0A222E2C612D2A2D2A2D2A2D2A2D2A2D2C62222C0A222E2C2C2C2C2C2C2C2C2C - 2C2C2C2C2C62222C0A222E2E6262626262626262626262626262222C0A222E2E - 2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A226161616161616161616161616161 - 6161227D0AC90100002F2A2058504D202A2F0A7374617469632063686172202A - 677261706869635B5D203D207B0A22313620313620362031222C0A222E206320 - 4E6F6E65222C0A222C20632023383038303830222C0A222D2063202346464646 - 4646222C0A222A20632023464646463030222C0A226120632023433043304330 - 222C0A226220632023303030303030222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E - 2E2E2E222C0A222E2E2E2C2C2C2C2C2E2E2E2E2E2E2E2E222C0A222E2E2C2D2D - 2D2D2D2C2E2E2E2E2E2E2E222C0A222E2C2D2A612A612A2D2C2C2C2C2C2C2E22 - 2C0A222E2C2D612A612A612D2D2D2D2D2D2C62222C0A222E2C2D2A612A612A61 - 2A612A612A2C62222C0A222C2C2C2C2C2C2C2C2C2C2C2C2C2A2C62222C0A222C - 2D2D2D2D2D2D2D2D2D2D2C2C612C62222C0A222C2D2A612A612A612A612A2A62 - 2C2C62222C0A222E2C2D2A612A612A612A612A61622C62222C0A222E2C2D612A - 612A612A612A612A622C62222C0A222E2E2C2D612A612A612A612A2A2C626222 - 2C0A222E2E2C2C2C2C2C2C2C2C2C2C2C2C2C62222C0A222E2E2E626262626262 - 62626262626262222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222D - 2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D227D0ABA0100002F2A2058504D202A2F0A - 7374617469632063686172202A677261706869635B5D203D207B0A2231362031 - 3620352031222C0A222E2063204E6F6E65222C0A222C20632023383038303830 - 222C0A222D20632023464646464646222C0A222A20632023303030303030222C - 0A226120632023433043304330222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E - 2E222C0A222E2C2C2C2C2C2C2C2C2E2E2E2E2E2E2E222C0A222E2C2D2D2D2D2D - 2D2C2A2E2E2E2E2E2E222C0A222E2C2D2D2D2D2D2D2C2D2A2E2E2E2E2E222C0A - 222E2C2D2D2D2D2D2D2C2A2A2A2E2E2E2E222C0A222E2C2D2D2D2D2D2D616161 - 2A2E2E2E2E222C0A222E2C2D2D2D2D2D2D2D61612A2E2E2E2E222C0A222E2C2D - 2D2D2D2D2D2D2D612A2E2E2E2E222C0A222E2C2D2D2D2D2D2D2D2D612A2E2E2E - 2E222C0A222E2C2D2D2D2D2D2D2D2D612A2E2E2E2E222C0A222E2C2D2D2D2D2D - 2D2D2D612A2E2E2E2E222C0A222E2C2D2D2D2D2D2D2D2D612A2E2E2E2E222C0A - 222E2C6161616161616161612A2E2E2E2E222C0A222E2A2A2A2A2A2A2A2A2A2A - 2A2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222D2D2D - 2D2D2D2D2D2D2D2D2D2D2D2D2D227D0AF60100002F2A2058504D202A2F0A7374 - 617469632063686172202A677261706869635B5D203D207B0A22313620313620 - 392031222C0A222E2063204E6F6E65222C0A222C20632023383038303830222C - 0A222D20632023464646464646222C0A222A20632023303030303030222C0A22 - 6120632023303030304646222C0A226220632023303030303830222C0A226320 - 632023303038303830222C0A226420632023433043304330222C0A2265206320 - 23464646463030222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E - 2C2C2C2C2C2C2C2C2E2E2E2E2E2E2E222C0A222E2C2D2D2D2D2D2D2C2A2E2E2E - 2E6162222C0A222E2C2D2D2D2D2D2D2C2D2A2E2E616362222C0A222E2C2D2D2D - 2D2D2D2C2A2A2A6163622E222C0A222E2C2D2D2D2D2D2D6464646163622E2E22 - 2C0A222E2C2D2D2D2D2D2D2D646163622E2E2E222C0A222E2C2D2D2D2D2D2D2D - 6163622E2E2E2E222C0A222E2C2D2D2D2D2D2D6163622A2E2E2E2E222C0A222E - 2C2D2D2D2D2D2C6562642A2E2E2E2E222C0A222E2C2D2D2D2D2D642C2D642A2E - 2E2E2E222C0A222E2C2D2D2D2D2A2C2D2D642A2E2E2E2E222C0A222E2C646464 - 6464646464642A2E2E2E2E222C0A222E2A2A2A2A2A2A2A2A2A2A2A2E2E2E2E22 - 2C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222D2D2D2D2D2D2D2D2D - 2D2D2D2D2D2D2D227D0ABA0100002F2A2058504D202A2F0A7374617469632063 - 686172202A677261706869635B5D203D207B0A22313620313620352031222C0A - 222E20632023383038303830222C0A222C2063204E6F6E65222C0A222D206320 - 23464646464646222C0A222A20632023303030303030222C0A22612063202343 - 3043304330222C0A222E2E2E2E2E2E2E2E2C2C2C2C2C2C2C2C222C0A222E2D2E - 2E2E2E2E2E2E2E2C2C2C2C2C2C222C0A222E2D2E2D2E2E2E2E2E2E2E2E2C2C2C - 2C222C0A222E2D2E2D2E2D2D2D2D2D2D2E2A2C2C2C222C0A222E2D2E2D2E2D2D - 2D2D2D2D2E2D2A2C2C222C0A222E2D2E2D2E2D2D2D2D2D2D2E2A2A2A2C222C0A - 222E2D2E2D2E2D2D2D2D2D2D6161612A2C222C0A222E2D2E2D2E2D2D2D2D2D2D - 2D61612A2C222C0A222E2D2E2D2E2D2D2D2D2D2D2D2D612A2C222C0A222E2D2E - 2D2E2D2D2D2D2D2D2D2D612A2C222C0A222E2D2E2D2E2D2D2D2D2D2D2D2D612A - 2C222C0A222E612E2D2E2D2D2D2D2D2D2D2D612A2C222C0A222A2A2E612E2D2D - 2D2D2D2D2D2D612A2C222C0A222C2C2A2A2E6161616161616161612A2C222C0A - 222C2C2C2C2A2A2A2A2A2A2A2A2A2A2A2C222C0A222D2D2D2D2D2D2D2D2D2D2D - 2D2D2D2D2D227D0AF60100002F2A2058504D202A2F0A73746174696320636861 - 72202A677261706869635B5D203D207B0A22313620313620392031222C0A222E - 20632023383038303830222C0A222C2063204E6F6E65222C0A222D2063202346 - 4646464646222C0A222A20632023303030304646222C0A226120632023303030 - 303830222C0A226220632023303030303030222C0A2263206320233030383038 - 30222C0A226420632023433043304330222C0A22652063202346464646303022 - 2C0A222E2E2E2E2E2E2E2E2C2C2C2C2C2C2C2C222C0A222E2D2E2E2E2E2E2E2E - 2E2C2C2C2C2C2C222C0A222E2D2E2D2E2E2E2E2E2E2E2E2C2C2A61222C0A222E - 2D2E2D2E2D2D2D2D2D2D2E622A6361222C0A222E2D2E2D2E2D2D2D2D2D2D2E2A - 63612C222C0A222E2D2E2D2E2D2D2D2D2D2D2A6361622C222C0A222E2D2E2D2E - 2D2D2D2D2D2A636164622C222C0A222E2D2E2D2E2D2D2D2D2A63616464622C22 - 2C0A222E2D2E2D2E2D2D2D2A63612D2D64622C222C0A222E2D2E2D2E2D2D2E65 - 612D2D2D64622C222C0A222E2D2E2D2E2D2D642E2D2D2D2D64622C222C0A222E - 642E2D2E2D622E2D2D2D2D2D64622C222C0A2262622E642E2D2D2D2D2D2D2D2D - 64622C222C0A222C2C62622E646464646464646464622C222C0A222C2C2C2C62 - 626262626262626262622C222C0A222D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D22 - 7D0A8D0100002F2A2058504D202A2F0A7374617469632063686172202A677261 - 706869635B5D203D207B0A22313620313620322031222C0A222E2063204E6F6E - 65222C0A222C20632023303030303030222C0A222E2E2E2E2E2E2E2E2E2E2E2E - 2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2C2E - 2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2C2C2E2E2E2E2E2E2E2E2E2E2E2E - 222C0A222E2E2C2C2C2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2C2C2C2C2E2E - 2E2E2E2E2E2E2E2E222C0A222E2E2C2C2C2C2C2E2E2E2E2E2E2E2E2E222C0A22 - 2E2E2C2C2C2C2C2C2E2E2E2E2E2E2E2E222C0A222E2E2C2C2C2C2C2C2C2E2E2E - 2E2E2E2E222C0A222E2E2C2C2C2C2C2C2E2E2E2E2E2E2E2E222C0A222E2E2C2C - 2C2C2C2E2E2E2E2E2E2E2E2E222C0A222E2E2C2C2C2C2E2E2E2E2E2E2E2E2E2E - 222C0A222E2E2C2C2C2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2C2C2E2E2E2E - 2E2E2E2E2E2E2E2E222C0A222E2E2C2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A22 - 2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0A + 4C69120000001000000010000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000000000 + 0000000000000000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFF0000 + 00FF000000000000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000 + 00FF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000000000000000000000000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF000000FF000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FFFFFFFFFF000000FF0000000000000000000000000000 + 000000000000000000000000000000000000000000FFFFFFFFFF000000FF0000 + 00FFFFFFFFFF000000FF800000FF800000FF800000FF800000FF800000FF8000 + 00FF00000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 + 00FF800000FF000000000000000000000000000000FFFFFFFFFF000000FF0000 + 00FF000000FF000000FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 + 00FFFFFFFFFF800000FF0000000000000000000000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FFFFFFFFFF000000FF000000FFFFFFFFFF8000 + 00FF800000FF800000FF800000FF00000000000000FFFFFFFFFF000000FF0000 + 00FF000000FF000000FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FF00000000000000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FFFFFFFFFF000000FF000000FF000000FF0000 + 00FF000000FFFFFFFFFF800000FF00000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FF000000000000000000000000000000000000 + 00000000000000000000800000FFFFFFFFFF000000FF000000FF000000FF0000 + 00FF000000FFFFFFFFFF800000FF000000000000000000000000000000000000 + 00000000000000000000800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FF000000000000000000000000000000000000 + 00000000000000000000800000FF800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000FF000000FF000000FF000000FF00000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF00FFFFFF00FFFFFF000000FF000000FF000000FF0000 + 00FF000000FF000000000000000000000000000000FF808080FF008080FF8080 + 80FF000000FF00FFFFFF000000FF000000FF00FFFFFF000000FF008080FF8080 + 80FF008080FF000000FF0000000000000000000000FF008080FF808080FF0000 + 00FF000000000000000000000000000000000000000000000000000000FF0080 + 80FF808080FF000000FF0000000000000000000000FF808080FF008080FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF8080 + 80FF008080FF000000FF0000000000000000000000FF008080FF808080FF0080 + 80FF808080FF008080FF808080FF008080FF808080FF008080FF808080FF0080 + 80FF808080FF000000FF0000000000000000000000FF808080FF008080FF8080 + 80FF008080FF808080FF800000FF800000FF800000FF800000FF800000FF8000 + 00FF800000FF000000FF0000000000000000000000FF008080FF808080FF0080 + 80FF808080FF008080FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF800000FF800000FF0000000000000000000000FF808080FF008080FF8080 + 80FF008080FF808080FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF800000FFFFFFFFFF800000FF00000000000000FF008080FF808080FF0080 + 80FF808080FF008080FF800000FFFFFFFFFF800000FF800000FF800000FFFFFF + FFFF800000FF800000FF800000FF00000000000000FF808080FF008080FF8080 + 80FF008080FF808080FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FF00000000000000FF008080FF808080FF0080 + 80FF808080FF008080FF800000FFFFFFFFFF800000FF800000FF800000FF8000 + 00FF800000FFFFFFFFFF800000FF0000000000000000000000FF000000FF0000 + 00FF000000FF000000FF800000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF800000FF000000000000000000000000000000000000 + 00000000000000000000800000FF800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000FFFFFF0000000000000000808080FF00FF + FFFF0000000000000000808080FF000000FF000000FF000000FF000000000000 + 0000000000000000000000000000808080FF00FFFFFF00000000808080FFFFFF + FFFF00000000808080FF00FFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000 + 000000000000000000000000000000000000808080FF00FFFFFF808080FF00FF + FFFF808080FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFF0000 + 00FF0000000000000000000000000000000000FFFFFF808080FF00FFFFFFFFFF + FFFF808080FF808080FF808080FF808080FFFFFFFFFF000000FFFFFFFFFFFFFF + FFFF000000FF0000000000000000808080FF808080FF808080FFFFFFFFFF00FF + FFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000 + 00FF000000FF000000FF000000000000000000000000FFFFFFFF808080FFFFFF + FFFFFFFFFFFF808080FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000808080FF0000000000000000808080FF00FF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000808080FFFFFF + FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF00000000000000000000000000000000000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000080FF000080FFFFFFFFFF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 80FF000080FFFFFFFFFF0000000000000000000080FF000080FF000080FF0000 + 80FFFFFFFFFF0000000000000000000000000000000000000000000080FF0000 + 80FFFFFFFFFF00000000000000000000000000000000000080FF000080FF0000 + 80FF000080FFFFFFFFFF000000000000000000000000000080FF000080FFFFFF + FFFF000000000000000000000000000000000000000000000000000000000000 + 80FF000080FF000080FFFFFFFFFF00000000000080FFFFFFFFFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000080FF000080FF000080FF000080FF000080FFFFFFFFFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000080FF000080FF000080FFFFFFFFFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000080FF000080FF000080FF000080FF000080FFFFFFFFFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 80FF000080FF000080FFFFFFFFFF00000000000080FF000080FFFFFFFFFF0000 + 0000000000000000000000000000000000000000000000000000000080FF0000 + 80FF000080FFFFFFFFFF000000000000000000000000000080FF000080FFFFFF + FFFF0000000000000000000000000000000000000000000080FF000080FF0000 + 80FFFFFFFFFF0000000000000000000000000000000000000000000080FFFFFF + FFFF0000000000000000000000000000000000000000000080FF000080FF0000 + 80FFFFFFFFFF0000000000000000000000000000000000000000000000000000 + 80FFFFFFFFFF0000000000000000000000000000000000000000000080FFFFFF + FFFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000080FFFFFFFFFF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF8000 + 00FF800000FF0000000000000000800000FFFFFFFFFF800000FF800000FF8000 + 00FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF8000 + 00FF800000FF0000000000000000800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF8000 + 00FF000000FF0000000000000000000000FF0000000000000000000000000000 + 00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000FF0000000000000000000000000000 + 00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000FF0000000000000000000000000000 + 00FFFFFFFFFFFFFFFFFF808080FF808080FF808080FFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000FF0000000000000000000000000000 + 00FFFFFFFFFF808080FF0000000000FFFFFF00000000808080FFFFFFFFFFFFFF + FFFF000000FF0000000000000000000000FF0000000000000000000000000000 + 00FF808080FF0000000000FFFFFF0000000000FFFFFF808080FF808080FF8080 + 80FF808080FF808080FF00000000000000FF0000000000000000000000000000 + 00FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF808080FF000000FF000000FF0000000000000000000000000000 + 00FF808080FFFFFFFFFF00FFFFFF0000000000FFFFFF0000000000FFFFFF0000 + 000000FFFFFF808080FF000000FF000000FF0000000000000000000000000000 + 00FF808080FFFFFFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FF + FFFF00000000808080FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF808080FFFFFFFFFF00FFFFFF0000000000FFFFFF0000000000FFFFFF0000 + 000000FFFFFF808080FF000000FF000000000000000000000000000000000000 + 0000808080FF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF000000FF000000000000000000000000000000000000 + 000000000000000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF800000FF0000000000000000000000000000 + 0000000000000000000000000000800000FF800000FF800000FF800000FF8000 + 00FF800000FF800000FF800000FF800000FF0000000000000000000000000000 + 0000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF00000000000000FF000000000000 + 0000000000000000000000000000000000FFFFFFFFFF808080FF808080FF8080 + 80FF808080FF808080FFFFFFFFFF000000FF00000000000000FF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF00000000000000FFFFFF00FF0000 + 00FF000000000000000000000000000000FFFFFFFFFF808080FF808080FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FFFFFF00FFFFFF + 00FF000000FF0000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFF0000 + 00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF + 00FFFFFF00FF000000FF00000000000000FF000000FF000000FF000000FF0000 + 00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF + 00FFFFFF00FFFFFF00FF000000FF000000000000000000000000000000000000 + 00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF + 00FFFFFF00FF000000FF00000000000000000000000000000000000000000000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FFFFFF00FFFFFF + 00FF000000FF0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FFFFFF00FF0000 + 00FF000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000FF000000FF000000FF000000FF000000FF0000 + 00FF00000000800000FF800000FF000000000000000000000000000000000000 + 000000000000000000FF00000000000000000000000000000000000000000000 + 0000000000FF800000FF800000FF000000000000000000000000000000000000 + 0000000000FF00000000000000FF000000000000000000000000000000000000 + 000000000000800000FF800000FF000000FF000000FF000000FF000000FF0000 + 00FF00000000000000FF00000000000000FF0000000000000000000000000000 + 000000000000800000FF800000FF000000FFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000FF00000000000000FF00000000000000FF00000000000000000000 + 0000000000FF800000FF800000FF000000FFFFFFFFFF000000FF000000000000 + 00FFFFFFFFFF000000FF00000000000000FF00000000000000FF000000FF0000 + 00FF00000000800000FF800000FF000000FFFFFFFFFFFFFFFFFF000000FFFFFF + FFFFFFFFFFFFFFFFFFFF000000FF00000000000000FFFFFFFFFF000000FF0000 + 00000000000000000000800000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFF000000FF000000FFFFFF + FFFF000000FF000000FF000000FF000000FF000000FFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFF000000FF000000FFFFFF + FFFF000000FF000000FF000000FF000000FF000000FFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000808080FF808080FF808080FF808080FF808080FF00000000000000000000 + 0000000000000000000000000000000000000000000000000000808080FF8080 + 80FFFF0000FFFF0000FFFFFFFFFF00000000008000FF000000FF000000FF0000 + 00000000000000000000000000000000000000000000808080FFFF0000FFFF00 + 00FF00000000FFFFFFFF00000000008000FF008000FF008000FF008000FF0000 + 00FF00000000000000000000000000000000808080FFFF0000FFFFFFFFFF0000 + 0000FFFFFFFF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF000000FF000000000000000000000000808080FFFF0000FFFF0000FFFFFF + FFFF00000000808080FFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFF8080 + 80FF808080FF0000000000000000000000FFFF0000FFFF0000FF000000000080 + 00FF008000FF808080FFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8080 + 80FFFFFFFFFF808080FF00000000000000FFFF0000FFFF0000FF008000FF0080 + 00FF008000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFF0000 + 00FF000000FF000000FF000000FF000000FFFF0000FFFF0000FF008000FF0080 + 00FF008000FF808080FFFFFFFFFF00FFFFFF808000FF808000FF808000FF8080 + 80FFFFFFFFFF808080FF000000FF000000FFFF0000FFFF0000FFFF0000FF0080 + 00FF008000FF808080FFFFFFFFFF808000FFFFFFFFFF808080FF008000FF8000 + 00FFFFFFFFFF808080FF000000FF000000FFFF0000FFFF0000FFFF0000FFFF00 + 00FFFF0000FF808080FFFFFFFFFF808000FF808080FF008000FFFF0000FF8000 + 00FFFFFFFFFF808080FF000000FF00000000000000FFFF0000FFFF0000FFFF00 + 00FFFF0000FF808080FFFFFFFFFF808000FFFF0000FFFF0000FFFF0000FF8000 + 00FFFFFFFFFF808080FF000000FF00000000000000FFFF0000FFFF0000FFFF00 + 00FFFF0000FF808080FFFFFFFFFF00FFFFFF800000FF800000FF800000FF8080 + 80FFFFFFFFFF808080FF000000FF0000000000000000000000FFFF0000FFFF00 + 00FFFF0000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF808080FF000000FF000000000000000000000000000000FF0000 + 00FFFF0000FF808080FFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FF + FFFFFFFFFFFF808080FF000000FF000000000000000000000000000000000000 + 0000000000FF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF000000FF000000000000000000000000000000000000 + 000000000000000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF008000FF008000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF008000FF008000FF008000FF008000FF008000FF008000FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFF0080 + 00FFFFFFFFFFFFFFFFFFFFFFFFFF008000FF008000FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFF0080 + 00FFFFFFFFFFFFFFFFFFFFFFFFFF008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFF0080 + 00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF008000FFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF008000FFFFFFFFFFFFFFFFFFFFFFFFFF008000FFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF008000FF008000FFFFFFFFFFFFFFFFFFFFFFFFFF008000FFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF008000FF008000FF008000FF008000FF008000FF008000FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF008000FF008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000808080FF808080FF808080FF808080FF808080FF808080FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000808080FFFFFFFFFF808080FF808080FF808080FF808080FF808080FF8080 + 80FF000000FF0000000000000000800000FF0000000000000000000000000000 + 0000808080FFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFF000000FF0000000000000000800000FF800000FF00000000000000000000 + 0000808080FFFFFFFFFF808080FFFFFFFFFF808080FF808080FF808080FF8080 + 80FF808080FF808080FF000000FF800000FF800000FF800000FF000000000000 + 0000808080FFFFFFFFFF808080FFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF000000FF800000FF800000FF800000FF800000FF0000 + 0000808080FFFFFFFFFF808080FFFFFFFFFF808080FFFFFFFFFF800000FF8000 + 00FF800000FFFFFFFFFF000000FF800000FF800000FF800000FF000000000000 + 0000808080FFFFFFFFFF808080FFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF000000FF800000FF800000FF00000000000000000000 + 0000000000FF000000FF808080FFFFFFFFFF808080FFFFFFFFFF800000FF8000 + 00FF800000FFFFFFFFFF000000FF800000FF0000000000000000000000000000 + 00000000000000000000808080FFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF000000FF000000000000000000000000000000000000 + 00000000000000000000000000FF000000FF808080FFFFFFFFFF800000FF8000 + 00FF800000FFFFFFFFFF000000FF000000000000000000000000000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF000000FF000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808080FF8080 + 80FF808080FF808080FF808080FF000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000808080FF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFF808080FF0000000000000000000000000000 + 000000000000000000000000000000000000808080FF00FFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF808080FF808080FF808080FF8080 + 80FF808080FF808080FF0000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF00FFFFFF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF + FFFFC0C0C0FF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF00FFFFFF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF + FFFFC0C0C0FF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF00FFFFFF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF + FFFFC0C0C0FF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF00FFFFFF808080FF000000FF00000000808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF000000FF0000000000000000000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808080FF8080 + 80FF808080FF808080FF808080FF000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000808080FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF0000000000000000000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFFFFFFFFF808080FF808080FF808080FF8080 + 80FF808080FF808080FF0000000000000000808080FFFFFFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF00FFFFFF808080FF000000FF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF00FFFFFF808080FF000000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF8080 + 80FFC0C0C0FF808080FF000000FF808080FFFFFFFFFF00FFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF00FFFFFF0000 + 00FF808080FF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0 + C0FF000000FF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF + FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF + FFFF000000FF808080FF000000FF0000000000000000808080FFFFFFFFFFC0C0 + C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF00FF + FFFF808080FF000000FF000000FF0000000000000000808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF000000FF000000000000000000000000000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF0000000000000000000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF000000FF00000000000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFF000000FF000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF000000FF000000FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FFC0C0C0FFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFC0C0C0FFC0C0C0FFC0C0 + C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF0000000000000000000000000000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF000000FF00000000000000000000 + 000000000000FF0000FF800000FF00000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFF000000FF000000000000 + 0000FF0000FF808000FF800000FF00000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF000000FF000000FF000000FFFF00 + 00FF808000FF800000FF0000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FFC0C0C0FFC0C0C0FFFF0000FF8080 + 00FF800000FF000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FFFF0000FF808000FF8000 + 00FF00000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF808000FF800000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF808000FF800000FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF808080FF00FFFFFF800000FFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFC0C0C0FF808080FFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF000000FF808080FFFFFFFFFFFFFFFFFFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000808080FFC0C0C0FFC0C0C0FFC0C0 + C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FF000000FF0000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF000000000000000000000000000000000000 + 0000000000000000000000000000808080FFFFFFFFFF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF808080FF00000000000000000000 + 0000000000000000000000000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FF808080FF808080FF808080FF808080FF808080FF808080FF808080FF0000 + 0000000000000000000000000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF0000 + 00FF000000000000000000000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFF + FFFF000000FF0000000000000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF0000 + 00FF000000FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0C0FFC0C0 + C0FFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0 + C0FFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFC0C0C0FF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000000000FF000000FF808080FFC0C0C0FF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF000000000000000000000000000000FF000000FF8080 + 80FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0 + C0FFC0C0C0FF000000FF00000000000000000000000000000000000000000000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF808080FF808080FF808080FF8080 + 80FF808080FF808080FF808080FF000000000000000000000000000000000000 + 0000000000000000000000000000808080FFFFFFFFFF808080FF808080FF8080 + 80FF808080FF808080FF808080FF808080FF808080FF00000000000000000000 + 0000000000000000000000000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FF808080FF808080FF808080FF808080FF808080FF808080FF808080FF0000 + 000000000000FF0000FF800000FF808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FF0000 + 00FFFF0000FF808000FF800000FF808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFF00 + 00FF808000FF800000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF8080 + 00FF800000FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF808000FF8000 + 00FFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF808000FF800000FFC0C0 + C0FFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FF808000FF800000FFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFF808080FF00FFFFFF800000FFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFFFFFFFFF808080FFFFFFFFFF8080 + 80FFFFFFFFFFFFFFFFFFC0C0C0FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000808080FFC0C0C0FF808080FFFFFFFFFF8080 + 80FFFFFFFFFF000000FF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF00000000000000FF000000FF808080FFC0C0C0FF8080 + 80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFC0C0C0FF000000FF000000000000000000000000000000FF000000FF8080 + 80FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0 + C0FFC0C0C0FF000000FF00000000000000000000000000000000000000000000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF000000FF00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000FF0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 00FF000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000 } end end diff --git a/components/virtualtreeview-unstable/demos/advanced/GridDemo.pas b/components/virtualtreeview-unstable/demos/advanced/GridDemo.pas index b1f5e095c..9cc86ba4d 100644 --- a/components/virtualtreeview-unstable/demos/advanced/GridDemo.pas +++ b/components/virtualtreeview-unstable/demos/advanced/GridDemo.pas @@ -17,14 +17,18 @@ uses StdCtrls, VirtualTrees, LResources, LCLType, variants; type + + { TGridForm } + TGridForm = class(TForm) VST5: TVirtualStringTree; GridLineCheckBox: TCheckBox; Label15: TLabel; TreeImages: TImageList; Label1: TLabel; - procedure VST5BeforeCellPaint(Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; - Column: TColumnIndex; CellRect: TRect); + procedure VST5BeforeCellPaint(Sender: TBaseVirtualTree; + TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); procedure VST5BeforeItemErase(Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect; var Color: TColor; var EraseAction: TItemEraseAction); procedure VST5CreateEditor(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; out EditLink: IVTEditLink); @@ -156,9 +160,9 @@ end; //---------------------------------------------------------------------------------------------------------------------- -procedure TGridForm.VST5BeforeCellPaint(Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; - Column: TColumnIndex; CellRect: TRect); - +procedure TGridForm.VST5BeforeCellPaint(Sender: TBaseVirtualTree; + TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); begin // Fill random cells with our own background, but don't touch the currently focused cell. if ((Column <> Sender.FocusedColumn) or (Node <> Sender.FocusedNode)) and diff --git a/components/virtualtreeview-unstable/demos/dataarray/Main.lfm b/components/virtualtreeview-unstable/demos/dataarray/Main.lfm index df2cd1dbc..a1644b37f 100644 --- a/components/virtualtreeview-unstable/demos/dataarray/Main.lfm +++ b/components/virtualtreeview-unstable/demos/dataarray/Main.lfm @@ -3,8 +3,6 @@ object Form1: TForm1 Height = 437 Top = 104 Width = 612 - HorzScrollBar.Page = 611 - VertScrollBar.Page = 436 ActiveControl = Button1 Caption = 'Form1' ClientHeight = 437 @@ -13,30 +11,30 @@ object Form1: TForm1 Font.Name = 'MS Sans Serif' OnClose = FormClose OnCreate = FormCreate - LCLVersion = '0.9.25' + LCLVersion = '0.9.27' object Label1: TLabel - Left = 129 - Height = 17 - Top = 348 - Width = 227 + Left = 207 + Height = 14 + Top = 351 + Width = 149 Anchors = [akRight, akBottom] Caption = 'Array data of the clicked node' ParentColor = False end object Label2: TLabel - Left = 249 - Height = 17 - Top = 332 - Width = 340 + Left = 367 + Height = 14 + Top = 335 + Width = 222 Anchors = [akRight, akBottom] Caption = 'Find and show the node by specific array index' ParentColor = False end object Label3: TLabel - Left = 241 - Height = 17 - Top = 348 - Width = 363 + Left = 367 + Height = 14 + Top = 351 + Width = 237 Anchors = [akRight, akBottom] Caption = 'Type index to get related tree node on the screen:' ParentColor = False diff --git a/components/virtualtreeview-unstable/demos/dataarray/Main.pas b/components/virtualtreeview-unstable/demos/dataarray/Main.pas index 43ee981b2..c3afadcb8 100644 --- a/components/virtualtreeview-unstable/demos/dataarray/Main.pas +++ b/components/virtualtreeview-unstable/demos/dataarray/Main.pas @@ -94,6 +94,8 @@ type end; + { TForm1 } + TForm1 = class(TForm) Button1: TButton; btnDelete: TButton; @@ -104,6 +106,9 @@ type Label2: TLabel; Label3: TLabel; MyTree: TVirtualStringTree; + procedure MyTreeBeforeCellPaint(Sender: TBaseVirtualTree; + TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); procedure MyTreeGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: WideString); @@ -114,9 +119,6 @@ type Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure btnDeleteClick(Sender: TObject); procedure FormCreate(Sender: TObject); - procedure MyTreeBeforeCellPaint(Sender: TBaseVirtualTree; - TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; - const CellRect: TRect); procedure MyTreePaintText(Sender: TBaseVirtualTree; const TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType); @@ -406,7 +408,7 @@ end; procedure TForm1.MyTreeBeforeCellPaint(Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; - const CellRect: TRect); + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); begin // This is example how to conditionally diff --git a/components/virtualtreeview-unstable/demos/images/Unit1.lfm b/components/virtualtreeview-unstable/demos/images/Unit1.lfm index 3909535c2..ac53ff6ba 100644 --- a/components/virtualtreeview-unstable/demos/images/Unit1.lfm +++ b/components/virtualtreeview-unstable/demos/images/Unit1.lfm @@ -3,8 +3,6 @@ object Form1: TForm1 Height = 440 Top = 162 Width = 500 - HorzScrollBar.Page = 499 - VertScrollBar.Page = 439 ActiveControl = VST1 Caption = 'VT - Images' ClientHeight = 440 @@ -12,7 +10,7 @@ object Form1: TForm1 Font.Height = -11 Font.Name = 'MS Sans Serif' OnCreate = FormCreate - LCLVersion = '0.9.25' + LCLVersion = '0.9.27' object VST1: TVirtualStringTree Cursor = 63 Height = 440 diff --git a/components/virtualtreeview-unstable/demos/images/Unit1.pas b/components/virtualtreeview-unstable/demos/images/Unit1.pas index df5c9f041..be9541575 100644 --- a/components/virtualtreeview-unstable/demos/images/Unit1.pas +++ b/components/virtualtreeview-unstable/demos/images/Unit1.pas @@ -30,11 +30,17 @@ uses Dialogs, ImgList, VirtualTrees, LResources; type + + { TForm1 } + TForm1 = class(TForm) VST1: TVirtualStringTree; ImageList1: TImageList; ImageList2: TImageList; procedure FormCreate(Sender: TObject); + procedure VST1BeforeCellPaint(Sender: TBaseVirtualTree; + TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); procedure VST1InitNode(Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates); procedure VST1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; @@ -49,9 +55,6 @@ type Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure VST1CompareNodes(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: TColumnIndex; var Result: Integer); - procedure VST1BeforeCellPaint(Sender: TBaseVirtualTree; - TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; - CellRect: TRect); private { Private declarations } public @@ -112,6 +115,62 @@ begin Randomize end; +procedure TForm1.VST1BeforeCellPaint(Sender: TBaseVirtualTree; + TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; + CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); +var + I, PercentageSize, RndPercent: integer; + ColorStart: Word; + Data: PMyRec; + R,G,B: byte; +begin + if (Column = 3) then + begin + + Data := Sender.GetNodeData(Node); + RndPercent:=Data.Percent; + + InflateRect(CellRect, -1, -1); + DrawEdge(TargetCanvas.Handle, CellRect, EDGE_SUNKEN, BF_ADJUST or +BF_RECT); + PercentageSize := (CellRect.Right - CellRect.Left) * RndPercent div 100; + + if True then + //Multy color approach + begin + + ColorStart :=clYellow; + + R:= GetRValue(ColorStart); + G:= GetGValue(ColorStart); + B:= GetBValue(ColorStart); + + + for I := CellRect.Right downto CellRect.Left do + begin + TargetCanvas.Brush.Color := RGB(R,G,B); + + if CellRect.Right - CellRect.Left <= PercentageSize then + TargetCanvas.FillRect(CellRect); + Dec(CellRect.Right); + + Dec(G); + + end; + end else + //One color approach + begin + CellRect.Right := CellRect.Left + PercentageSize; + if RndPercent = 100 then + TargetCanvas.Brush.Color := clRed + else + TargetCanvas.Brush.Color := clLime; + TargetCanvas.FillRect(CellRect); + end; + end; + +end; + procedure TForm1.VST1InitNode(Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates); var @@ -271,62 +330,6 @@ begin end end; -procedure TForm1.VST1BeforeCellPaint(Sender: TBaseVirtualTree; - TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; - CellRect: TRect); -var - I, PercentageSize, RndPercent: integer; - ColorStart: Word; - Data: PMyRec; - R,G,B: byte; -begin - if (Column = 3) then - begin - - Data := Sender.GetNodeData(Node); - RndPercent:=Data.Percent; - - InflateRect(CellRect, -1, -1); - DrawEdge(TargetCanvas.Handle, CellRect, EDGE_SUNKEN, BF_ADJUST or -BF_RECT); - PercentageSize := (CellRect.Right - CellRect.Left) * RndPercent div 100; - - if True then - //Multy color approach - begin - - ColorStart :=clYellow; - - R:= GetRValue(ColorStart); - G:= GetGValue(ColorStart); - B:= GetBValue(ColorStart); - - - for I := CellRect.Right downto CellRect.Left do - begin - TargetCanvas.Brush.Color := RGB(R,G,B); - - if CellRect.Right - CellRect.Left <= PercentageSize then - TargetCanvas.FillRect(CellRect); - Dec(CellRect.Right); - - Dec(G); - - end; - end else - //One color approach - begin - CellRect.Right := CellRect.Left + PercentageSize; - if RndPercent = 100 then - TargetCanvas.Brush.Color := clRed - else - TargetCanvas.Brush.Color := clLime; - TargetCanvas.FillRect(CellRect); - end; - end; - -end; - initialization {$i Unit1.lrs} diff --git a/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.lfm b/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.lfm index 473c561f7..eaee88d2b 100644 --- a/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.lfm +++ b/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.lfm @@ -1,9 +1,8 @@ object frmVTNoData: TfrmVTNoData + Left = 220 Height = 346 - Top = 255 + Top = 220 Width = 401 - HorzScrollBar.Page = 400 - VertScrollBar.Page = 345 ActiveControl = VT Caption = 'Basic VT as a Tree (no node data used)' ClientHeight = 346 @@ -15,7 +14,7 @@ object frmVTNoData: TfrmVTNoData OnCreate = FormCreate OnDestroy = FormDestroy Position = poDefaultPosOnly - LCLVersion = '0.9.25' + LCLVersion = '0.9.27' object Panel1: TPanel Height = 346 Width = 401 @@ -63,39 +62,40 @@ object frmVTNoData: TfrmVTNoData TabOrder = 1 object Label1: TLabel Left = 9 - Height = 17 + Height = 14 Top = 9 - Width = 115 + Width = 76 Alignment = taCenter Caption = 'VT.TreeOptions' Font.Color = clRed Font.Height = -11 Font.Name = 'Tahoma' ParentColor = False + ParentFont = False end object chkCheckBoxes: TCheckBox Left = 180 - Height = 24 + Height = 19 Top = 7 - Width = 120 + Width = 87 Caption = 'Check Boxes' OnClick = chkCheckBoxesClick TabOrder = 0 end object chkFullExpand: TCheckBox Left = 100 - Height = 24 + Height = 19 Top = 7 - Width = 109 + Width = 81 Caption = 'Full Expand' OnClick = chkFullExpandClick TabOrder = 1 end object chkShowLevel: TCheckBox Left = 271 - Height = 24 + Height = 19 Top = 7 - Width = 108 + Width = 80 Caption = 'Show Level' OnClick = chkShowLevelClick TabOrder = 2 diff --git a/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.pas b/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.pas index 5af6e5c08..56a6292bf 100644 --- a/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.pas +++ b/components/virtualtreeview-unstable/demos/vtbasic/VTNoData.pas @@ -186,7 +186,9 @@ implementation 'FullVertGridLines', // This option only has an effect if toShowVertGridLines is enabled too. 'AlwaysHideSelection', // Do not draw node selection, regardless of focused state. 'UseBlendedSelection', // Enable alpha blending for node selections. - 'StaticBackground' + 'StaticBackground', + 'ChildrenAbove', + 'FixedIndent' ); aSelOpts : array[0..Ord(High(TVTSelectionOption))] of string[25] = diff --git a/components/virtualtreeview-unstable/include/intf/win32/vtvdragmanager.inc b/components/virtualtreeview-unstable/include/intf/win32/vtvdragmanager.inc index 65ad4c3ac..ffb4fe90f 100644 --- a/components/virtualtreeview-unstable/include/intf/win32/vtvdragmanager.inc +++ b/components/virtualtreeview-unstable/include/intf/win32/vtvdragmanager.inc @@ -203,7 +203,7 @@ function TVTDataObject.HGlobalClone(HGlobal: THandle): THandle; var Size: Cardinal; Data, - NewData: PChar; + NewData: PByte; begin Size := GlobalSize(HGlobal);