eric6/QScintilla/EditorOutlineModel.py

changeset 7757
1f9f35f9be6d
parent 7697
c981a807aab1
child 7923
91e843545d9a
equal deleted inserted replaced
7756:c23a94f7e2e5 7757:1f9f35f9be6d
14 from UI.BrowserModel import ( 14 from UI.BrowserModel import (
15 BrowserModel, BrowserItem, BrowserClassItem, BrowserCodingItem, 15 BrowserModel, BrowserItem, BrowserClassItem, BrowserCodingItem,
16 BrowserGlobalsItem, BrowserImportsItem, BrowserImportItem, 16 BrowserGlobalsItem, BrowserImportsItem, BrowserImportItem,
17 BrowserClassAttributesItem, BrowserMethodItem 17 BrowserClassAttributesItem, BrowserMethodItem
18 ) 18 )
19
20 import Preferences
19 21
20 22
21 class EditorOutlineModel(BrowserModel): 23 class EditorOutlineModel(BrowserModel):
22 """ 24 """
23 Class implementing the editor outline model. 25 Class implementing the editor outline model.
88 keys = list(dictionary.keys()) 90 keys = list(dictionary.keys())
89 if len(keys) > 0: 91 if len(keys) > 0:
90 parentItem = self.rootItem 92 parentItem = self.rootItem
91 93
92 if repopulate: 94 if repopulate:
93 self.beginInsertRows( 95 last = len(keys) - 1
94 QModelIndex(), 96 if (
95 0, len(keys) - 1) 97 "@@Coding@@" in keys and
98 not Preferences.getEditor("SourceOutlineShowCoding")
99 ):
100 last -= 1
101 self.beginInsertRows(QModelIndex(), 0, last)
96 102
97 for key in keys: 103 for key in keys:
98 if key.startswith("@@"): 104 if key.startswith("@@"):
99 # special treatment done later 105 # special treatment done later
100 continue 106 continue
104 node = BrowserClassItem( 110 node = BrowserClassItem(
105 parentItem, cl, self.__filename) 111 parentItem, cl, self.__filename)
106 self._addItem(node, parentItem) 112 self._addItem(node, parentItem)
107 except AttributeError: 113 except AttributeError:
108 pass 114 pass
109 if "@@Coding@@" in keys: 115 if (
116 "@@Coding@@" in keys and
117 Preferences.getEditor("SourceOutlineShowCoding")
118 ):
110 node = BrowserCodingItem( 119 node = BrowserCodingItem(
111 parentItem, 120 parentItem,
112 QCoreApplication.translate( 121 QCoreApplication.translate(
113 "EditorOutlineModel", "Coding: {0}") 122 "EditorOutlineModel", "Coding: {0}")
114 .format(dictionary["@@Coding@@"].coding), 123 .format(dictionary["@@Coding@@"].coding),

eric ide

mercurial