diff -r 0bc989a51428 -r 451f60e70434 Preferences/ConfigurationPages/EditorHighlightingStylesPage.py --- a/Preferences/ConfigurationPages/EditorHighlightingStylesPage.py Thu Nov 21 18:43:54 2013 +0100 +++ b/Preferences/ConfigurationPages/EditorHighlightingStylesPage.py Sun Nov 24 15:24:24 2013 +0100 @@ -107,8 +107,24 @@ self.styleGroup.setEnabled(True) self.styleElementList.addItems(self.lexer.styles) + self.__styleAllItems() self.styleElementList.setCurrentRow(0) + def __styleAllItems(self): + """ + Private method to style all items of the style element list. + """ + for row in range(self.styleElementList.count()): + style = self.lexer.ind2style[row] + colour = self.lexer.color(style) + paper = self.lexer.paper(style) + font = self.lexer.font(style) + + itm = self.styleElementList.item(row) + itm.setFont(font) + itm.setBackground(paper) + itm.setForeground(colour) + def on_styleElementList_currentRowChanged(self, index): """ Private method to set up the style element part of the source page. @@ -150,8 +166,10 @@ style = self.lexer.ind2style[ self.styleElementList.row(selItem)] self.lexer.setColor(colour, style) + selItem.setForeground(colour) else: self.lexer.setColor(colour, self.style) + self.styleElementList.currentItem().setForeground(colour) @pyqtSlot() def on_backgroundButton_clicked(self): @@ -170,8 +188,10 @@ style = self.lexer.ind2style[ self.styleElementList.row(selItem)] self.lexer.setPaper(colour, style) + selItem.setBackground(colour) else: self.lexer.setPaper(colour, self.style) + self.styleElementList.currentItem().setBackground(colour) @pyqtSlot() def on_allBackgroundColoursButton_clicked(self): @@ -187,6 +207,7 @@ self.sampleText.repaint() for style in list(self.lexer.ind2style.values()): self.lexer.setPaper(colour, style) + self.__styleAllItems() def __changeFont(self, doAll, familyOnly, sizeOnly): """ @@ -242,13 +263,18 @@ if doAll: for style in list(self.lexer.ind2style.values()): setFont(font, style, familyOnly, sizeOnly) + self.__styleAllItems() elif len(self.styleElementList.selectedItems()) > 1: for selItem in self.styleElementList.selectedItems(): style = self.lexer.ind2style[ self.styleElementList.row(selItem)] setFont(font, style, familyOnly, sizeOnly) + itmFont = self.lexer.font(style) + selItem.setFont(itmFont) else: setFont(font, self.style, familyOnly, sizeOnly) + itmFont = self.lexer.font(self.style) + self.styleElementList.currentItem().setFont(itmFont) def __fontButtonMenuTriggered(self, act): """ @@ -319,6 +345,7 @@ self.__setToDefault(self.style) self.on_styleElementList_currentRowChanged( self.styleElementList.currentRow()) + self.__styleAllItems() @pyqtSlot() def on_allDefaultButton_clicked(self): @@ -329,6 +356,7 @@ self.__setToDefault(style) self.on_styleElementList_currentRowChanged( self.styleElementList.currentRow()) + self.__styleAllItems() def __setToDefault(self, style): """ @@ -453,6 +481,8 @@ self.sampleText.setPalette(pl) self.sampleText.repaint() self.eolfillCheckBox.setChecked(eolfill) + + self.__styleAllItems() def saveState(self): """