diff --git a/CHANGELOG.md b/CHANGELOG.md index 7063891a..1a8cfdd6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ ## Enhancements - Project menu, git: add the first line of last commit message as additional information, between square brackets, to the items of the list of branches. (#53) +- Symbol list: keep errors and warnings at the top of the tree and never sort these two categories, to respect the lexicographic order. (#58) ## Other diff --git a/src/u_symlist.lfm b/src/u_symlist.lfm index e2cf2416..f886b305 100644 --- a/src/u_symlist.lfm +++ b/src/u_symlist.lfm @@ -35,22 +35,22 @@ inherited SymbolListWidget: TSymbolListWidget OnKeyPress = TreeKeyPress Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw] Items.Data = { - F9FFFFFF02000E000000000000000000000000000000FFFFFFFF000000000000 - 00000005000000416C696173010000000100000001000000FFFFFFFF00000000 - 000000000005000000436C617373020000000200000002000000FFFFFFFF0000 - 0000000000000004000000456E756D030000000300000003000000FFFFFFFF00 - 00000000000000000800000046756E6374696F6E040000000400000004000000 - FFFFFFFF00000000000000000006000000496D706F7274050000000500000005 - 000000FFFFFFFF00000000000000000009000000496E74657266616365060000 - 000600000006000000FFFFFFFF000000000000000000050000004D6978696E07 - 0000000700000007000000FFFFFFFF0000000000000000000600000053747275 - 6374000000000000000000000000FFFFFFFF0000000000000000000800000054 - 656D706C617465010000000100000001000000FFFFFFFF000000000000000000 - 05000000556E696F6E020000000200000002000000FFFFFFFF00000000000000 - 000008000000556E697474657374030000000300000003000000FFFFFFFF0000 - 00000000000000080000005661726961626C65080000000800000008000000FF - FFFFFF000000000000000000080000005761726E696E67730900000009000000 - 09000000FFFFFFFF000000000000000000060000004572726F7273 + F9FFFFFF02000E000000090000000900000009000000FFFFFFFF000000000000 + 000000060000004572726F7273080000000800000008000000FFFFFFFF000000 + 000000000000080000005761726E696E6773000000000000000000000000FFFF + FFFF00000000000000000005000000416C696173010000000100000001000000 + FFFFFFFF00000000000000000005000000436C61737302000000020000000200 + 0000FFFFFFFF00000000000000000004000000456E756D030000000300000003 + 000000FFFFFFFF0000000000000000000800000046756E6374696F6E04000000 + 0400000004000000FFFFFFFF00000000000000000006000000496D706F727405 + 0000000500000005000000FFFFFFFF00000000000000000009000000496E7465 + 7266616365060000000600000006000000FFFFFFFF0000000000000000000500 + 00004D6978696E070000000700000007000000FFFFFFFF000000000000000000 + 06000000537472756374000000000000000000000000FFFFFFFF000000000000 + 0000000800000054656D706C617465010000000100000001000000FFFFFFFF00 + 000000000000000005000000556E696F6E020000000200000002000000FFFFFF + FF00000000000000000008000000556E69747465737403000000030000000300 + 0000FFFFFFFF000000000000000000080000005661726961626C65 } TreeLineColor = clDefault end @@ -89,7 +89,7 @@ inherited SymbolListWidget: TSymbolListWidget end end inherited contextMenu: TPopupMenu - left = 112 - top = 48 + Left = 112 + Top = 48 end end diff --git a/src/u_symlist.pas b/src/u_symlist.pas index 06bdb006..eaee91d3 100644 --- a/src/u_symlist.pas +++ b/src/u_symlist.pas @@ -423,20 +423,20 @@ begin fOptions.loadFromFile(fname); fOptions.AssignTo(self); - ndAlias := Tree.Items[0]; - ndClass := Tree.Items[1]; - ndEnum := Tree.Items[2]; - ndFunc := Tree.Items[3]; - ndImp := Tree.Items[4]; - ndIntf := Tree.Items[5]; - ndMix := Tree.Items[6]; - ndStruct := Tree.Items[7]; - ndTmp := Tree.Items[8]; - ndUni := Tree.Items[9]; - ndUt := Tree.Items[10]; - ndVar := Tree.Items[11]; - ndWarn := Tree.Items[12]; - ndErr := Tree.Items[13]; + ndErr := Tree.Items[0]; + ndWarn := Tree.Items[1]; + ndAlias := Tree.Items[2]; + ndClass := Tree.Items[3]; + ndEnum := Tree.Items[4]; + ndFunc := Tree.Items[5]; + ndImp := Tree.Items[6]; + ndIntf := Tree.Items[7]; + ndMix := Tree.Items[8]; + ndStruct := Tree.Items[9]; + ndTmp := Tree.Items[10]; + ndUni := Tree.Items[11]; + ndUt := Tree.Items[12]; + ndVar := Tree.Items[13]; Tree.OnDblClick := @TreeDblClick; Tree.PopupMenu := contextMenu; @@ -865,6 +865,8 @@ begin for i:= 0 to tree.Items.Count-1 do begin n := Tree.Items[i]; + if (n = ndErr) or (n = ndWarn) then + continue; if n.Count > 0 then n.CustomSort(nil); end;