QScintilla/EditorButtonsWidget.py

changeset 5416
16366120b523
parent 5412
db5a520f69d3
child 5603
4f2dd0850803
equal deleted inserted replaced
5415:160f72d69cff 5416:16366120b523
13 from PyQt5.QtCore import pyqtSlot, Qt 13 from PyQt5.QtCore import pyqtSlot, Qt
14 from PyQt5.QtWidgets import QWidget, QVBoxLayout, QToolButton, QFrame, QMenu, \ 14 from PyQt5.QtWidgets import QWidget, QVBoxLayout, QToolButton, QFrame, QMenu, \
15 QSizePolicy, QScrollArea 15 QSizePolicy, QScrollArea
16 16
17 import UI.PixmapCache 17 import UI.PixmapCache
18 import Preferences
18 19
19 from . import MarkupProviders 20 from . import MarkupProviders
20 21
21 22
22 class EditorButtonsWidget(QWidget): 23 class EditorButtonsWidget(QWidget):
49 self.__editor = editor 50 self.__editor = editor
50 self.__editor.languageChanged.connect(self.__updateButtonStates) 51 self.__editor.languageChanged.connect(self.__updateButtonStates)
51 self.__editor.editorSaved.connect(self.__updateButtonStates) 52 self.__editor.editorSaved.connect(self.__updateButtonStates)
52 self.__editor.editorRenamed.connect(self.__updateButtonStates) 53 self.__editor.editorRenamed.connect(self.__updateButtonStates)
53 self.__editor.selectionChanged.connect(self.__editorSelectionChanged) 54 self.__editor.selectionChanged.connect(self.__editorSelectionChanged)
55 self.__editor.settingsRead.connect(self.__editorSettingsRead)
54 56
55 self.__createButtons() 57 self.__createButtons()
56 58
57 self.__layout.addStretch() 59 self.__layout.addStretch()
58 60
281 self.__buttons["numberedList"].setEnabled( 283 self.__buttons["numberedList"].setEnabled(
282 self.__provider.hasNumberedList()) 284 self.__provider.hasNumberedList())
283 285
284 self.__editorSelectionChanged() 286 self.__editorSelectionChanged()
285 287
286 # TODO: make this configurable 288 if Preferences.getEditor("HideFormatButtons"):
287 self.setVisible(self.__provider.kind() != "none") 289 self.setVisible(self.__provider.kind() != "none")
288 290
289 def __formatClicked(self, format): 291 def __formatClicked(self, format):
290 """ 292 """
291 Private slot to handle a format button being clicked. 293 Private slot to handle a format button being clicked.
292 294
347 self.__provider.hasHyperlink() and not hasSelection) 349 self.__provider.hasHyperlink() and not hasSelection)
348 self.__buttons["line"].setEnabled( 350 self.__buttons["line"].setEnabled(
349 self.__provider.hasLine() and not hasSelection) 351 self.__provider.hasLine() and not hasSelection)
350 self.__buttons["image"].setEnabled( 352 self.__buttons["image"].setEnabled(
351 self.__provider.hasImage() and not hasSelection) 353 self.__provider.hasImage() and not hasSelection)
354
355 def __editorSettingsRead(self):
356 """
357 Private slot to handle a change of the editor related settings.
358 """
359 if Preferences.getEditor("HideFormatButtons"):
360 if self.__provider is not None:
361 self.setVisible(self.__provider.kind() != "none")
362 else:
363 self.setVisible(True)

eric ide

mercurial