diff --git a/icons/bullet/bullet_purple.png b/icons/bullet/bullet_purple.png index 52ba5036..5d75adf0 100644 Binary files a/icons/bullet/bullet_purple.png and b/icons/bullet/bullet_purple.png differ diff --git a/icons/file/document.png b/icons/file/document.png new file mode 100644 index 00000000..8b8b1ca0 Binary files /dev/null and b/icons/file/document.png differ diff --git a/icons/file/document24.png b/icons/file/document24.png new file mode 100644 index 00000000..1b3f1ce1 Binary files /dev/null and b/icons/file/document24.png differ diff --git a/icons/file/document32.png b/icons/file/document32.png new file mode 100644 index 00000000..7f1997a7 Binary files /dev/null and b/icons/file/document32.png differ diff --git a/icons/other/cancel.png b/icons/other/cancel.png index 7640cd5f..33c876b2 100644 Binary files a/icons/other/cancel.png and b/icons/other/cancel.png differ diff --git a/icons/other/cancel24.png b/icons/other/cancel24.png new file mode 100644 index 00000000..e964fc64 Binary files /dev/null and b/icons/other/cancel24.png differ diff --git a/icons/other/cancel32.png b/icons/other/cancel32.png new file mode 100644 index 00000000..1b20ae0d Binary files /dev/null and b/icons/other/cancel32.png differ diff --git a/icons/other/clean24.png b/icons/other/clean24.png new file mode 100644 index 00000000..68da2ed2 Binary files /dev/null and b/icons/other/clean24.png differ diff --git a/icons/other/clean32.png b/icons/other/clean32.png new file mode 100644 index 00000000..10e62e6e Binary files /dev/null and b/icons/other/clean32.png differ diff --git a/icons/other/stop.png b/icons/other/stop.png index b626916f..34831bcb 100644 Binary files a/icons/other/stop.png and b/icons/other/stop.png differ diff --git a/icons/other/stop24.png b/icons/other/stop24.png new file mode 100644 index 00000000..1e34f7c3 Binary files /dev/null and b/icons/other/stop24.png differ diff --git a/icons/other/stop32.png b/icons/other/stop32.png new file mode 100644 index 00000000..f15bf692 Binary files /dev/null and b/icons/other/stop32.png differ diff --git a/icons/other/warn_red.png b/icons/other/warn_red.png new file mode 100644 index 00000000..45b64a79 Binary files /dev/null and b/icons/other/warn_red.png differ diff --git a/icons/other/warn_red24.png b/icons/other/warn_red24.png new file mode 100644 index 00000000..47512a0d Binary files /dev/null and b/icons/other/warn_red24.png differ diff --git a/icons/other/warn_red32.png b/icons/other/warn_red32.png new file mode 100644 index 00000000..7233d45d Binary files /dev/null and b/icons/other/warn_red32.png differ diff --git a/icons/other/warning24.png b/icons/other/warning24.png index 6b9103f0..7711f6f7 100644 Binary files a/icons/other/warning24.png and b/icons/other/warning24.png differ diff --git a/lazproj/coedit.lpi b/lazproj/coedit.lpi index 60a4550a..fd33b01f 100644 --- a/lazproj/coedit.lpi +++ b/lazproj/coedit.lpi @@ -13,7 +13,7 @@ - + @@ -296,6 +296,18 @@ + + + + + + + + + + + + diff --git a/src/ce_editor.pas b/src/ce_editor.pas index 5de3b669..254b5396 100644 --- a/src/ce_editor.pas +++ b/src/ce_editor.pas @@ -328,6 +328,26 @@ begin AssignPng(pageControl.addButton, 'DOCUMENT_ADD'); AssignPng(pageControl.closeButton, 'DOCUMENT_DELETE'); AssignPng(pageControl.splitButton, 'SPLITTER'); + + AssignPng(mnuedCopy.Bitmap, 'COPY'); + AssignPng(mnuedCut.Bitmap, 'CUT'); + AssignPng(mnuedPaste.Bitmap, 'PASTE'); + AssignPng(mnuedUndo.Bitmap, 'ARROW_UNDO'); + AssignPng(mnuedRedo.Bitmap, 'ARROW_REDO'); + AssignPng(mnuedJum2Decl.Bitmap, 'ARROW_SHOE'); + AssignPng(mnuedCopy.Bitmap, 'COPY'); + AssignPng(mnuedNext.Bitmap, 'GO_NEXT'); + AssignPng(mnuedPrev.Bitmap, 'GO_PREVIOUS'); + AssignPng(mnuedRename.Bitmap, 'PENCIL'); + AssignPng(mnuedUpcase.Bitmap, 'CASE'); + AssignPng(mnuedLowcase.Bitmap, 'CASE'); + AssignPng(mnuedNextCarea.Bitmap, 'GO_NEXT'); + AssignPng(mnuedPrevCarea.Bitmap, 'GO_PREVIOUS'); + AssignPng(mnuedSortLines.Bitmap, 'SORT_AZ'); + AssignPng(mnuedNextProtGrp.Bitmap, 'GO_NEXT'); + AssignPng(mnuedPrevProtGrp.Bitmap, 'GO_PREVIOUS'); + AssignPng(mnuedNextWarn.Bitmap, 'GO_NEXT'); + AssignPng(mnuedPrevWarn.Bitmap, 'GO_PREVIOUS'); end; iss24: begin @@ -336,6 +356,26 @@ begin AssignPng(pageControl.addButton, 'DOCUMENT_ADD24'); AssignPng(pageControl.closeButton, 'DOCUMENT_DELETE24'); AssignPng(pageControl.splitButton, 'SPLITTER24'); + + AssignPng(mnuedCopy.Bitmap, 'COPY24'); + AssignPng(mnuedCut.Bitmap, 'CUT24'); + AssignPng(mnuedPaste.Bitmap, 'PASTE24'); + AssignPng(mnuedUndo.Bitmap, 'ARROW_UNDO24'); + AssignPng(mnuedRedo.Bitmap, 'ARROW_REDO24'); + //AssignPng(mnuedJum2Decl.Bitmap, 'ARROW_SHOE24'); + AssignPng(mnuedCopy.Bitmap, 'COPY24'); + AssignPng(mnuedNext.Bitmap, 'GO_NEXT24'); + AssignPng(mnuedPrev.Bitmap, 'GO_PREVIOUS24'); + AssignPng(mnuedRename.Bitmap, 'PENCIL24'); + AssignPng(mnuedUpcase.Bitmap, 'CASE24'); + AssignPng(mnuedLowcase.Bitmap, 'CASE24'); + AssignPng(mnuedNextCarea.Bitmap, 'GO_NEXT24'); + AssignPng(mnuedPrevCarea.Bitmap, 'GO_PREVIOUS24'); + AssignPng(mnuedSortLines.Bitmap, 'SORT_AZ24'); + AssignPng(mnuedNextProtGrp.Bitmap, 'GO_NEXT24'); + AssignPng(mnuedPrevProtGrp.Bitmap, 'GO_PREVIOUS24'); + AssignPng(mnuedNextWarn.Bitmap, 'GO_NEXT24'); + AssignPng(mnuedPrevWarn.Bitmap, 'GO_PREVIOUS24'); end; iss32: begin @@ -344,35 +384,34 @@ begin AssignPng(pageControl.addButton, 'DOCUMENT_ADD32'); AssignPng(pageControl.closeButton, 'DOCUMENT_DELETE32'); AssignPng(pageControl.splitButton, 'SPLITTER32'); + + AssignPng(mnuedCopy.Bitmap, 'COPY32'); + AssignPng(mnuedCut.Bitmap, 'CUT32'); + AssignPng(mnuedPaste.Bitmap, 'PASTE32'); + AssignPng(mnuedUndo.Bitmap, 'ARROW_UNDO32'); + AssignPng(mnuedRedo.Bitmap, 'ARROW_REDO32'); + //AssignPng(mnuedJum2Decl.Bitmap, 'ARROW_SHOE32'); + AssignPng(mnuedCopy.Bitmap, 'COPY32'); + AssignPng(mnuedNext.Bitmap, 'GO_NEXT32'); + AssignPng(mnuedPrev.Bitmap, 'GO_PREVIOUS32'); + AssignPng(mnuedRename.Bitmap, 'PENCIL32'); + AssignPng(mnuedUpcase.Bitmap, 'CASE32'); + AssignPng(mnuedLowcase.Bitmap, 'CASE32'); + AssignPng(mnuedNextCarea.Bitmap, 'GO_NEXT32'); + AssignPng(mnuedPrevCarea.Bitmap, 'GO_PREVIOUS32'); + AssignPng(mnuedSortLines.Bitmap, 'SORT_AZ32'); + AssignPng(mnuedNextProtGrp.Bitmap, 'GO_NEXT32'); + AssignPng(mnuedPrevProtGrp.Bitmap, 'GO_PREVIOUS32'); + AssignPng(mnuedNextWarn.Bitmap, 'GO_NEXT32'); + AssignPng(mnuedPrevWarn.Bitmap, 'GO_PREVIOUS32'); end; end; - fTokList := TLexTokenList.Create; - // - AssignPng(mnuedCopy.Bitmap, 'COPY'); - AssignPng(mnuedCut.Bitmap, 'CUT'); - AssignPng(mnuedPaste.Bitmap, 'PASTE'); - AssignPng(mnuedUndo.Bitmap, 'ARROW_UNDO'); - AssignPng(mnuedRedo.Bitmap, 'ARROW_REDO'); - AssignPng(mnuedJum2Decl.Bitmap, 'ARROW_SHOE'); - AssignPng(mnuedCopy.Bitmap, 'COPY'); - AssignPng(mnuedNext.Bitmap, 'GO_NEXT'); - AssignPng(mnuedPrev.Bitmap, 'GO_PREVIOUS'); - AssignPng(mnuedRename.Bitmap, 'PENCIL'); - AssignPng(mnuedUpcase.Bitmap, 'CASE'); - AssignPng(mnuedLowcase.Bitmap, 'CASE'); - AssignPng(mnuedNextCarea.Bitmap, 'GO_NEXT'); - AssignPng(mnuedPrevCarea.Bitmap, 'GO_PREVIOUS'); - AssignPng(mnuedSortLines.Bitmap, 'SORT_AZ'); - AssignPng(mnuedNextProtGrp.Bitmap, 'GO_NEXT'); - AssignPng(mnuedPrevProtGrp.Bitmap, 'GO_PREVIOUS'); - AssignPng(mnuedNextWarn.Bitmap, 'GO_NEXT'); - AssignPng(mnuedPrevWarn.Bitmap, 'GO_PREVIOUS'); - // + EntitiesConnector.addObserver(self); EntitiesConnector.addSingleService(self); - // + fOptions:= TCEPagesOptions.construct(self); end; diff --git a/src/ce_messages.lfm b/src/ce_messages.lfm index 393e5126..d36b9823 100644 --- a/src/ce_messages.lfm +++ b/src/ce_messages.lfm @@ -49,17 +49,17 @@ inherited CEMessagesWidget: TCEMessagesWidget ButtonWidth = 100 ShowCaptions = True Wrapable = False - object button0: TCEToolButton[0] - Left = 530 + object sep: TCEToolButton[0] + Left = 935 Height = 28 + Hint = 'Clean filtered messages' Top = 0 AutoSize = True - Caption = 'button0' Style = tbsDivider scaledSeparator = False end object btnSelMisc: TCEToolButton[1] - Left = 430 + Left = 835 Hint = 'filter the other messages' Top = 0 AutoSize = True @@ -67,7 +67,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object button2: TCEToolButton[2] - Left = 425 + Left = 521 Height = 28 Top = 0 AutoSize = True @@ -76,7 +76,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object btnSelApp: TCEToolButton[3] - Left = 325 + Left = 421 Hint = 'filter the messages related to Coedit' Top = 0 AutoSize = True @@ -84,7 +84,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object button4: TCEToolButton[4] - Left = 320 + Left = 416 Height = 28 Top = 0 AutoSize = True @@ -93,7 +93,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object btnSelProj: TCEToolButton[5] - Left = 220 + Left = 316 Hint = 'filter the messages related to the active project' Top = 0 AutoSize = True @@ -101,7 +101,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object button6: TCEToolButton[6] - Left = 215 + Left = 311 Height = 28 Top = 0 AutoSize = True @@ -110,7 +110,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object btnSelEdit: TCEToolButton[7] - Left = 115 + Left = 211 Hint = 'filter the messages related to the active editor' Top = 0 AutoSize = True @@ -118,7 +118,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object button8: TCEToolButton[8] - Left = 110 + Left = 206 Height = 28 Top = 0 AutoSize = True @@ -127,7 +127,7 @@ inherited CEMessagesWidget: TCEMessagesWidget scaledSeparator = False end object btnSelAll: TCEToolButton[9] - Left = 10 + Left = 106 Hint = 'don''t filter the messages' Top = 0 AutoSize = True @@ -135,16 +135,7 @@ inherited CEMessagesWidget: TCEMessagesWidget Down = True scaledSeparator = False end - object button10: TCEToolButton[10] - Left = 5 - Height = 28 - Top = 0 - AutoSize = True - Caption = 'button10' - Style = tbsDivider - scaledSeparator = False - end - object TreeFilterEdit1: TTreeFilterEdit[11] + object TreeFilterEdit1: TTreeFilterEdit[10] Left = 536 Height = 26 Hint = 'in the selected category, filter the messages that contain the text typed here' @@ -160,14 +151,19 @@ inherited CEMessagesWidget: TCEMessagesWidget TabOrder = 0 OnButtonClick = TreeFilterEdit1ButtonClick end - object btnClearCat: TSpeedButton[12] + object btnClearCat: TCEToolButton[11] Left = 1 - Height = 28 - Hint = 'clear the messages that match to the selected category' Top = 0 - Width = 4 - Align = alLeft - AutoSize = True + resourceName = 'CLEAN' + scaledSeparator = False + end + object button0: TCEToolButton[12] + Left = 101 + Height = 28 + Top = 0 + Caption = 'button0' + Style = tbsDivider + scaledSeparator = False end end end diff --git a/src/ce_messages.pas b/src/ce_messages.pas index 7c1c5c89..968f039d 100644 --- a/src/ce_messages.pas +++ b/src/ce_messages.pas @@ -63,20 +63,19 @@ type { TCEMessagesWidget } TCEMessagesWidget = class(TCEWidget, ICEEditableOptions, ICEDocumentObserver, ICEProjectObserver, ICEMessagesDisplay) + btnClearCat: TCEToolButton; btnSelAll: TCEToolButton; btnSelApp: TCEToolButton; btnSelEdit: TCEToolButton; btnSelMisc: TCEToolButton; btnSelProj: TCEToolButton; - button0: TCEToolButton; - button10: TCEToolButton; + sep: TCEToolButton; button2: TCEToolButton; button4: TCEToolButton; button6: TCEToolButton; button8: TCEToolButton; imgList: TImageList; List: TTreeView; - btnClearCat: TSpeedButton; TreeFilterEdit1: TTreeFilterEdit; procedure ListCustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean); @@ -399,10 +398,7 @@ begin fBtns[amcMisc]:= btnSelMisc; fBtns[amcProj]:= btnSelProj; // - // reminder: a toolbar button can be used here because it would have the - // same size as the buttons used to select the categories. btnClearCat.OnClick := @actClearCurCatExecute; - AssignPng(btnClearCat, 'CLEAN'); // fEditorMessagePos := TCEEditorMessagePos.Create; // @@ -428,7 +424,6 @@ end; procedure TCEMessagesWidget.setToolBarFlat(value: boolean); begin inherited setToolBarFlat(value); - btnClearCat.Flat := value; TreeFilterEdit1.Flat:=value; end; diff --git a/src/ce_miniexplorer.lfm b/src/ce_miniexplorer.lfm index 9493de8f..56e00e20 100644 --- a/src/ce_miniexplorer.lfm +++ b/src/ce_miniexplorer.lfm @@ -16,6 +16,7 @@ inherited CEMiniExplorerWidget: TCEMiniExplorerWidget inherited Content: TPanel Left = 4 Height = 558 + Top = 36 Width = 335 BorderSpacing.Around = 4 ClientHeight = 558 diff --git a/src/ce_miniexplorer.pas b/src/ce_miniexplorer.pas index 41732874..9f149d0d 100644 --- a/src/ce_miniexplorer.pas +++ b/src/ce_miniexplorer.pas @@ -266,6 +266,7 @@ begin // lstFilter.FilteredListbox := nil; lstFilter.onChange := @lstFilterChange; + lstFilter.BorderSpacing.Left := ScaleX(116, 96); // treeSetRoots; // diff --git a/src/ce_procinput.pas b/src/ce_procinput.pas index f1169d8a..3754c066 100644 --- a/src/ce_procinput.pas +++ b/src/ce_procinput.pas @@ -66,9 +66,28 @@ begin fMru.LoadFromFile(fname); if fMru.Count = 0 then fMru.Insert(0, '(your input here)'); - AssignPng(btnClose, 'PENCIL_DELETE'); - AssignPng(btnSend, 'PENCIL_GO'); - AssignPng(btnKill, 'CANCEL'); + + case GetIconScaledSize of + iss16: + begin + AssignPng(btnClose, 'PENCIL_DELETE'); + AssignPng(btnSend, 'PENCIL_GO'); + AssignPng(btnKill, 'CANCEL'); + end; + iss24: + begin + AssignPng(btnClose, 'PENCIL_DELETE24'); + AssignPng(btnSend, 'PENCIL_GO24'); + AssignPng(btnKill, 'CANCEL24'); + end; + iss32: + begin + AssignPng(btnClose, 'PENCIL_DELETE32'); + AssignPng(btnSend, 'PENCIL_GO32'); + AssignPng(btnKill, 'CANCEL32'); + end; + end; + toolbarVisible:=false; end; diff --git a/src/ce_projinspect.pas b/src/ce_projinspect.pas index 3709fc87..07d9d2a1 100644 --- a/src/ce_projinspect.pas +++ b/src/ce_projinspect.pas @@ -78,7 +78,7 @@ implementation constructor TCEProjectInspectWidget.create(aOwner: TComponent); begin fSymStringExpander:= getSymStringExpander; - // + fActOpenFile := TAction.Create(self); fActOpenFile.Caption := 'Open file in editor'; fActOpenFile.OnExecute := @actOpenFileExecute; @@ -90,15 +90,16 @@ begin fActBuildConf.Caption := 'Build configuration'; fActBuildConf.OnExecute := @actBuildExecute; fActBuildConf.OnUpdate := @actUpdate; - // + inherited; - // + Tree.OnDblClick := @TreeDblClick; fFileNode := Tree.Items[0]; fConfNode := Tree.Items[1]; - // + Tree.PopupMenu := contextMenu; - // + TreeFilterEdit1.BorderSpacing.Left := ScaleX(114, 96); + EntitiesConnector.addObserver(self); end; diff --git a/src/ce_symlist.lfm b/src/ce_symlist.lfm index 0faf39a6..016e2398 100644 --- a/src/ce_symlist.lfm +++ b/src/ce_symlist.lfm @@ -27,7 +27,6 @@ inherited CESymbolListWidget: TCESymbolListWidget Align = alClient BorderSpacing.Around = 4 HideSelection = False - Images = imgList ReadOnly = True RightClickSelect = True ScrollBars = ssAutoBoth @@ -46,13 +45,13 @@ inherited CESymbolListWidget: TCESymbolListWidget 000000FFFFFFFF00000000000000000009000000496E74657266616365060000 000600000006000000FFFFFFFF000000000000000000050000004D6978696E07 0000000700000007000000FFFFFFFF0000000000000000000600000053747275 - 6374080000000800000008000000FFFFFFFF0000000000000000000800000054 - 656D706C617465000000000000000000000000FFFFFFFF000000000000000000 - 05000000556E696F6E010000000100000001000000FFFFFFFF00000000000000 - 000008000000556E697474657374020000000200000002000000FFFFFFFF0000 - 00000000000000080000005661726961626C65090000000900000009000000FF - FFFFFF000000000000000000080000005761726E696E67730A0000000A000000 - 0A000000FFFFFFFF000000000000000000060000004572726F7273 + 6374000000000000000000000000FFFFFFFF0000000000000000000800000054 + 656D706C617465010000000100000001000000FFFFFFFF000000000000000000 + 05000000556E696F6E020000000200000002000000FFFFFFFF00000000000000 + 000008000000556E697474657374030000000300000003000000FFFFFFFF0000 + 00000000000000080000005661726961626C65080000000800000008000000FF + FFFFFF000000000000000000080000005761726E696E67730900000009000000 + 09000000FFFFFFFF000000000000000000060000004572726F7273 } TreeLineColor = clDefault end @@ -92,363 +91,4 @@ inherited CESymbolListWidget: TCESymbolListWidget left = 112 top = 48 end - object imgList: TImageList[2] - left = 152 - top = 48 - Bitmap = { - 4C690B0000001000000010000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000000064646497626262FF616161FF626262FF6464649700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00646464976F6E6EFFA6A5A4FFA9A8A9FFA6A5A4FF6D6E6EFF64646497FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00626363FFA7A5A5FF7D7B7AFF787675FF7D7B7AFFA7A5A5FF626363FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00626363FF8E8C8BFF767371FF767371FF767371FF8E8C8BFF626363FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00636464FF858381FF878481FF868381FF878481FF858381FF636464FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00585858AC6F6E6EFF95918FFF989492FF95918FFF6F6E6EFF585858ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E585858AC636363FF626263FF636363FF585858AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0000000000B9851C97B78319FFB68217FFB78319FFB9851C9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00B9851C97C6922EFFECC482FFEFC886FFECC482FFC6912CFFB9851C97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00B78319FFEEC684FFE5AA49FFE2A641FFE5AA49FFEEC684FFB78319FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00B78219FFEBB964FFE3A641FFE3A641FFE3A641FFEBB964FFB78219FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00B7841AFFEAB45CFFE9B45CFFE8B35BFFE9B45CFFEAB45CFFB7841AFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00A37519ACC5922FFFEDC074FFF1C47AFFEDC074FFC5922FFFA37519ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001EA37519ACB78319FFB68218FFB78319FFA37519AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0000000000008C4B97008A48FF008946FF008A48FF008C4B9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00008C4B97109F63FF74DAB7FF7ADEBDFF74DAB7FF109F63FF008C4B97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00008A49FF66DAB4FF1EC68EFF16C388FF1EC68EFF66DAB4FF008A49FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00008948FF25CF99FF00C07FFF00BE7EFF00C07FFF25CF99FF008948FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00008A4AFF00C789FF00C88AFF00C689FF00C88AFF00C789FF008A4AFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00007B43AC009B5CFF00CE90FF00D194FF00CE90FF009B5CFF007B43ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E007B43AC008A4AFF008949FF008A4AFF007B43AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000002C70DC97296DDBFF286CDBFF296DDBFF2C70DC9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002D70DC974083E7FF95C2FFFF9BC7FFFF95C2FFFF4081E7FF2D70DC97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002B6EDBFF8FC3FFFF5AA4FFFF53A1FFFF5AA4FFFF8FC3FFFF2B6EDBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002B6DDBFF65B2FFFF449EFFFF449DFFFF449EFFFF65B2FFFF2B6DDBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002D6FDBFF4FA9FFFF4FA9FFFF4EA7FFFF4FA9FFFF4FA9FFFF2D6FDBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002863C1AC387FE4FF56B2FFFF58B6FFFF56B2FFFF387FE4FF2863C1ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E2862C1AC2D6EDBFF2D6DDBFF2D6EDBFF2862C1AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000009A6BDC979968DBFF9968DBFF9968DBFF9A6BDC9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF009A6BDC97A17DE7FFC6BCFFFFC9C1FFFFC6BCFFFFA17DE7FF9A6BDC97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF009A69DBFFC5BDFFFFAA9DFFFFA798FFFFAA9DFFFFC5BDFFFF9A69DBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF009A68DBFFB3ACFFFFA396FFFFA396FFFFA396FFFFB3ACFFFF9A68DBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF009A69DBFFACA5FFFFACA5FFFFABA3FFFFACA5FFFFACA5FFFF9A69DBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00885EC1ACA17BE4FFB3B1FFFFB4B6FFFFB3B1FFFFA17BE4FF885EC1ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E885EC1AC9A69DBFF9A68DBFF9A69DBFF885EC1AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0000000000AB499C97AA459AFFA94499FFAA459AFFAB499C9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00AB499C97B462AAFFD8B8D9FFDBBEDDFFD8B8D9FFB462AAFFAB499C97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00AA469AFFDCB6DAFFCA91C9FFC78CC5FFCA91C9FFDCB6DAFFAA469AFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00A94699FFD69ED4FFCA83C7FFCA83C6FFCA83C7FFD69ED4FFA94699FFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00AA489AFFD68ED1FFD68ED2FFD58DD1FFD68ED2FFD68ED1FFAA489AFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00964189ACB85CAAFFE195DAFFE499DEFFE195DAFFB85CAAFF964189ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E964189ACA94899FFA84799FFA94899FF964189AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0000000000354CCD973249CCFF3148CBFF3249CCFF354CCD9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00354CCD97455DDBFF90A6FCFF95ACFFFF90A6FCFF445DDBFF354CCD97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00334ACCFF90A5FDFF5A79FAFF5573F9FF5A79FAFF90A5FDFF334ACCFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00334ACBFF6D88FFFF4D6DFBFF4D6DFAFF4D6DFBFF6D88FFFF334ACBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00354BCBFF5F7CFFFF607CFFFF5F7BFDFF607CFFFF5F7CFFFF354BCBFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002F44B4AC425AD9FF6F88FFFF738CFFFF6F88FFFF425AD9FF2F44B4ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E2F44B4AC344BCBFF334ACAFF344BCBFF2F44B4AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000002CC1FF9729C0FFFF28C0FFFF29C0FFFF2CC1FF9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002DC1FF9741C6FFFF96DCFFFF9CDDFFFF96DCFFFF41C5FFFF2DC1FF97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002AC0FFFF95DDFFFF62CDFFFF5CCBFFFF62CDFFFF95DDFFFF2AC0FFFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002AC0FFFF75D7FFFF56CEFFFF56CEFFFF56CEFFFF75D7FFFF2AC0FFFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF002BC0FFFF68D8FFFF69D8FFFF68D8FFFF69D8FFFF68D8FFFF2BC0FFFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0028AAE0AC3EC9FFFF76E0FFFF7BE2FFFF76E0FFFF3EC9FFFF28AAE0ACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001E28AAE0AC2BC0FFFF2ABFFFFF2BC0FFFF28AAE0AC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF0000000000DADADA97D9D9DAFFD9D9D9FFD9D9DAFFDADADA9700000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00DADADA97DADADBFFE5E5E4FFE6E6E4FFE5E5E4FFDADAD9FFDADADA97FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00D9DADAFFE6E6E5FFDBDBD9FFDADAD8FFDBDBD9FFE6E6E5FFD9DADAFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00D9DADAFFE2E1E0FFDBDAD9FFDBDAD9FFDBDAD9FFE2E1E0FFD9DADAFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00D9DADAFFE2E1E0FFE3E2E0FFE2E1E0FFE3E2E0FFE2E1E0FFD9DADAFFFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00BFBFBFACDDDDDDFFE8E7E6FFE9E8E7FFE8E7E6FFDDDDDDFFBFBFBFACFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF000000001EBFBFBFACD9D9D9FFD9D9D9FFD9D9D9FFBFBFBFAC0000001EFFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00000000000000001E0000003300000033000000330000001E00000000FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF003B85CC003B85CC003B85CC003B85CC003B85 - CC003B85CC003983CA213384CDFF3384CDFF3983CA213B85CC003B85CC003B85 - CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85 - CC003983CB00337EC7CF84C3F1FF84C3F1FF337EC7CF3983CB003B85CC003B85 - CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003A84 - CB003580CA6D5398D7FFC1F0FFFFC1F0FFFF5398D7FF3580CA6D3A84CB003B85 - CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003882 - CA0A3A83CBFFB2E5FFFF9EC8DEFF9EC8DEFFB2E5FFFF3A83CBFF3882CA0A3B85 - CC003B85CC003B85CC003B85CC003B85CC003B85CC003B85CC003983CB00337E - C8CF86BEEAFFA4ECFFFF6C5D53FF6C5D53FFA4ECFFFF86BEEAFF337EC8CF3983 - CB003B85CC003B85CC003B85CC003B85CC003B85CC003A84CC003580C9585797 - D5FFC6F3FFFF3ACAFFFF6C5B54FF6C5B54FF3ACAFFFFC6F3FFFF5797D5FF3580 - C9583A84CC003B85CC003B85CC003B85CC003B85CC003882CA003C82C9FFC1E8 - FDFF50CCFFFF27C5FFFF69554CFF69554CFF27C5FFFF50CCFFFFC1E8FDFF3C82 - C9FF3882CA003B85CC003B85CC003B85CC003983CB00337EC8BB90BFE6FF6FD7 - FFFF32C3FFFF34CBFFFF644B3FFF644B3FFF34CBFFFF32C3FFFF6FD7FFFF90BF - E6FF337EC8BB3983CB003B85CC003A84CC003680C9445B97D4FF9EE8FFFF38C7 - FFFF3DC8FFFF3DCFFFFF4BBCE9FF4BBCE9FF3DCFFFFF3DC8FFFF38C7FFFF9EE8 - FFFF5B97D4FF3680C9443A84CC003982CB003F82C9FFA3E0FAFF40CFFFFF44CE - FFFF46CFFFFF44D6FFFF775C50FF775C50FF44D6FFFF46CFFFFF44CEFFFF40CF - FFFFA3E0FAFF3F82C9FF3982CB003880C9947AB8E4FF52DBFFFF4BD5FFFF4DD5 - FFFF4DD6FFFF4BDCFFFF67493FFF67493FFF4BDCFFFF4DD6FFFF4DD5FFFF4BD5 - FFFF52DBFFFF7AB8E4FF3880C9943B86CDFF55E3FFFF55E3FFFF56E1FFFF56E1 - FFFF56E2FFFF56E5FFFF55E9FFFF55E9FFFF56E5FFFF56E2FFFF56E1FFFF56E1 - FFFF55E3FFFF55E3FFFF3B86CDFF3A82CAFF397FC8FF387DC7FF387CC7FF397C - C7FF397CC7FF387DC7FF387EC9FF387EC9FF387DC7FF397CC7FF397CC7FF387C - C7FF387DC7FF397FC8FF3A82CAFF000000330000003300000033000000330000 - 0033000000330000003300000033000000330000003300000033000000330000 - 0033000000330000003300000033FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006A85 - FC236984FA7D6782F9DB6580F7F3637EF5F3617CF3DB5F7AF17D5D77EF23FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006984FA536882 - F9E66E83EEFF92A6F4FFA0B4F8FFA0B4F8FF91A6F3FF687DE9FF5973EBE65671 - E953FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006883F9536681F8F48497 - F1FFA9BDFBFF8AA3F8FF6B89F6FF6B89F6FF89A2F8FFA8BCFAFF7F92ECFF526C - E4F44F69E253FFFFFF00FFFFFF00FFFFFF006781F822657FF6E58397F0FFA9BD - FBFF6382F5FF6382F5FFFFFFFFFFFFFFFFFF617EF3FF607CF3FFA6B9F9FF7B8D - EAFF4A64DEE54862DB22FFFFFF00FFFFFF00637EF57E6C81ECFFA9BDFBFF6382 - F5FF6281F5FF6280F4FFFFFFFFFFFFFFFFFF5F7AF1FF5F78F0FF5D76EFFFA5B5 - F8FF5D70DDFF435DD77EFFFFFF00FFFFFF005F7AF1DB91A6F3FF88A1F8FF6280 - F4FF617EF3FF607CF3FFFFFFFFFFFFFFFFFF5D76EFFF5C73EEFF5B70ECFF8293 - F1FF8998ECFF3E58D2DBFFFFFF00FFFFFF005B76EDF6A1B6F8FF6784F4FF607C - F3FF5F7AF1FF5F78F0FFFFFFFFFFFFFFFFFF5B70ECFF5A6EEBFF596CEAFF5F6F - E9FF9BA8F1FF3A53CEF6FFFFFF00FFFFFF005771E9F6A0B3F7FF6580F2FF5F78 - F0FF5D76EFFF5C73EEFFD3D9FAFFFFFFFFFF596CEAFF5869E8FF5767E7FF5D6C - E7FF99A5F1FF354FCAF6FFFFFF00FFFFFF00526DE5DB8E9FF0FF8499F4FF5C73 - EEFF5B70ECFF5A6EEBFF909DF1FFA6AFF3FF5767E7FF5665E6FF5562E5FF7D89 - EBFF8591E7FF314AC6DBFFFFFF00FFFFFF004E68E17E6073E0FFA4B3F7FF5A6E - EBFF596CEAFF5869E8FFFFFFFFFFFFFFFFFF5562E5FF5461E3FF535FE2FF9FA9 - F2FF5061D1FF2D46C27EFFFFFF00FFFFFF004963DC224660DAE57888E6FFA3B0 - F5FF5767E7FF5665E6FF8992EDFF8892ECFF535FE2FF525DE1FF9FA9F2FF6F7D - DDFF2B44C0E52942BE22FFFFFF00FFFFFF00FFFFFF00425CD5533F59D3F47584 - E3FFA1ACF4FF7F8BECFF5C67E4FF5B66E3FF7D87EAFF9FA8F1FF6F7CDDFF2943 - BFF42741BD53FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF003A54CF533852 - CCE65264D4FF8490E7FF95A0EEFF959FEDFF838EE5FF4C5DCEFF2841BDE6263F - BB53FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00334D - C823314BC67D2F48C4DB2C46C2F32A44C0F32842BEDB2640BC7D243EBA23FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF - FF00FFFFFF00FFFFFF00FFFFFF00 - } - end end diff --git a/src/ce_symlist.pas b/src/ce_symlist.pas index 7f16b76e..d0bcdede 100644 --- a/src/ce_symlist.pas +++ b/src/ce_symlist.pas @@ -107,7 +107,6 @@ type TCESymbolListWidget = class(TCEWidget, ICEDocumentObserver, ICEEditableOptions) btnRefresh: TCEToolButton; - imgList: TImageList; Tree: TTreeView; TreeFilterEdit1: TTreeFilterEdit; procedure btnRefreshClick(Sender: TObject); @@ -117,6 +116,7 @@ type procedure TreeFilterEdit1MouseEnter(Sender: TObject); procedure TreeKeyPress(Sender: TObject; var Key: char); private + fImages: TImageList; fHasToolExe: boolean; fToolExeName: string; fOptions: TCESymbolListOptions; @@ -299,7 +299,7 @@ begin if Dest is TCESymbolListWidget then begin widg := TCESymbolListWidget(Dest); - // + widg.updaterByDelayDuration := fAutoRefreshDelay; widg.fRefreshOnFocus := fRefreshOnFocus; widg.fRefreshOnChange := fRefreshOnChange; @@ -310,7 +310,7 @@ begin widg.fSortSymbols := fSortSymbols; widg.fSmartExpander := fSmartExpander; widg.fDeep := fDeep; - // + widg.fActAutoRefresh.Checked := fAutoRefresh; widg.fActRefreshOnChange.Checked:= fRefreshOnChange; widg.fActRefreshOnFocus.Checked := fRefreshOnFocus; @@ -323,12 +323,13 @@ end; constructor TCESymbolListWidget.create(aOwner: TComponent); var fname: string; + i: integer; begin fAutoRefresh := false; fRefreshOnFocus := true; fRefreshOnChange := false; checkIfHasToolExe; - // + fActCopyIdent := TAction.Create(self); fActCopyIdent.OnExecute:=@actCopyIdentExecute; fActCopyIdent.Caption := 'Copy identifier'; @@ -353,11 +354,65 @@ begin fActSelectInSource := TAction.Create(self); fActSelectInSource.OnExecute := @TreeDblClick; fActSelectInSource.Caption := 'Select in source'; - // + inherited; + // allow empty name if owner is nil fSyms := TSymbolList.create(nil); - // + + fImages := TImageList.Create(self); + case GetIconScaledSize of + iss16: + begin + Tree.DefaultItemHeight:= 20; + fImages.Width:= 16; + fImages.Height:= 16; + fImages.AddResourceName(HINSTANCE, 'BULLET_BLACK'); + fImages.AddResourceName(HINSTANCE, 'BULLET_BLUE'); + fImages.AddResourceName(HINSTANCE, 'BULLET_GREEN'); + fImages.AddResourceName(HINSTANCE, 'BULLET_ORANGE'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PINK'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PURPLE'); + fImages.AddResourceName(HINSTANCE, 'BULLET_RED'); + fImages.AddResourceName(HINSTANCE, 'BULLET_YELLOW'); + fImages.AddResourceName(HINSTANCE, 'WARNING'); + fImages.AddResourceName(HINSTANCE, 'WARN_RED'); + end; + iss24: + begin + Tree.DefaultItemHeight:= 28; + fImages.Width:= 24; + fImages.Height:= 24; + fImages.AddResourceName(HINSTANCE, 'BULLET_BLACK24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_BLUE24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_GREEN24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_ORANGE24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PINK24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PURPLE24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_RED24'); + fImages.AddResourceName(HINSTANCE, 'BULLET_YELLOW24'); + fImages.AddResourceName(HINSTANCE, 'WARNING24'); + fImages.AddResourceName(HINSTANCE, 'WARN_RED24'); + end; + iss32: + begin + Tree.DefaultItemHeight:= 36; + fImages.Width:= 32; + fImages.Height:= 32; + fImages.AddResourceName(HINSTANCE, 'BULLET_BLACK32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_BLUE32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_GREEN32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_ORANGE32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PINK32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_PURPLE32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_RED32'); + fImages.AddResourceName(HINSTANCE, 'BULLET_YELLOW32'); + fImages.AddResourceName(HINSTANCE, 'WARNING32'); + fImages.AddResourceName(HINSTANCE, 'WARN_RED32'); + end; + end; + Tree.Images := fImages; + TreeFilterEdit1.BorderSpacing.Left:= ScaleX(30,96); fOptions := TCESymbolListOptions.Create(self); fOptions.Name:= 'symbolListOptions'; @@ -365,7 +420,7 @@ begin if fname.fileExists then fOptions.loadFromFile(fname); fOptions.AssignTo(self); - // + ndAlias := Tree.Items[0]; ndClass := Tree.Items[1]; ndEnum := Tree.Items[2]; @@ -380,23 +435,23 @@ begin ndVar := Tree.Items[11]; ndWarn := Tree.Items[12]; ndErr := Tree.Items[13]; - // + Tree.OnDblClick := @TreeDblClick; Tree.PopupMenu := contextMenu; - // + EntitiesConnector.addObserver(self); end; destructor TCESymbolListWidget.destroy; begin EntitiesConnector.removeObserver(self); - // + killProcess(fToolProc); fSyms.Free; - // + fOptions.saveToFile(getCoeditDocPath + OptsFname); fOptions.Free; - // + inherited; end;