Fixes #194: Editor tab should trim long titles

This commit is contained in:
Olivier Keshavjee 2017-11-14 18:11:50 +01:00
parent 31dcc6d53a
commit 170c8ef404
2 changed files with 13 additions and 2 deletions

View file

@ -40,6 +40,8 @@ class editorWidget(QWidget, Ui_editorWidget_ui):
toggledSpellcheck = pyqtSignal(bool)
dictChanged = pyqtSignal(str)
_maxTabTitleLength = 24
def __init__(self, parent):
QWidget.__init__(self, parent)
self.setupUi(self)
@ -113,7 +115,15 @@ class editorWidget(QWidget, Ui_editorWidget_ui):
return
i = self._tabWidget.indexOf(self)
self._tabWidget.setTabText(i, item.title())
self._tabWidget.setTabText(i, self.ellidedTitle(item.title()))
self._tabWidget.setTabToolTip(i, item.title())
def ellidedTitle(self, title):
if len(title) > self._maxTabTitleLength:
return "{}".format(title[:self._maxTabTitleLength])
else:
return title
def setView(self):
# index = mainWindow().treeRedacOutline.currentIndex()

View file

@ -220,7 +220,8 @@ class mainEditor(QWidget, Ui_mainEditor):
editor = editorWidget(self)
editor.setCurrentModelIndex(index)
editor._tabWidget = tabWidget
tabWidget.addTab(editor, title)
i = tabWidget.addTab(editor, editor.ellidedTitle(title))
tabWidget.setTabToolTip(i, title)
tabWidget.setCurrentIndex(tabWidget.count() - 1)
else:
self.currentEditor(tabWidget).setCurrentModelIndex(index)