DefaultTextType is a settings

This commit is contained in:
Olivier Keshavjee 2015-06-25 10:01:28 +02:00
parent 1889b6a1ea
commit 112dd51879
9 changed files with 103 additions and 11 deletions

View file

@ -319,15 +319,16 @@ class MainWindow(QMainWindow, Ui_MainWindow):
return
self.currentProject = project
# Load empty settings
imp.reload(settings)
QSettings().setValue("lastProject", project)
# Load data
if loadFromFile:
# Load empty settings
imp.reload(settings)
# Load data
self.loadEmptyDatas()
self.loadDatas()
self.makeConnections()
# Load settings

View file

@ -15,7 +15,6 @@ class outlineModel(QAbstractItemModel):
QAbstractItemModel.__init__(self, parent)
self.rootItem = outlineItem(self, title="root")
self._defaultTextType = "t2t"
def index(self, row, column, parent):

View file

@ -44,14 +44,14 @@ corkBackground = {
"color": "#926239",
"image": ""
}
defaultTextType = "t2t"
fullScreenTheme = "spacedreams"
def save(filename=None):
global spellcheck, dict, corkSliderFactor, viewSettings, corkSizeFactor, folderView, lastTab, lastIndex, \
autoSave, autoSaveDelay, saveOnQuit, autoSaveNoChanges, autoSaveNoChangesDelay, outlineViewColumns, \
corkBackground, fullScreenTheme
corkBackground, fullScreenTheme, defaultTextType
allSettings = {
"viewSettings": viewSettings,
@ -69,6 +69,7 @@ def save(filename=None):
"outlineViewColumns":outlineViewColumns,
"corkBackground":corkBackground,
"fullScreenTheme":fullScreenTheme,
"defaultTextType":defaultTextType,
}
#pp=pprint.PrettyPrinter(indent=4, compact=False)
@ -160,4 +161,7 @@ def load(string, fromString=False):
if "fullScreenTheme" in allSettings:
global fullScreenTheme
fullScreenTheme = allSettings["fullScreenTheme"]
if "defaultTextType" in allSettings:
global defaultTextType
defaultTextType = allSettings["defaultTextType"]

View file

@ -51,6 +51,19 @@ class settingsWindow(QWidget, Ui_Settings):
self.chkAutoLoad.setChecked(autoLoad)
self.chkAutoLoad.stateChanged.connect(self.saveSettingsChanged)
dtt = [
("t2t", self.tr("Txt2Tags"), "text-x-script"),
("html", self.tr("Rich Text (html)"), "text-html"),
("txt", self.tr("Plain Text"), "text-x-generic"),
]
self.cmbDefaultTextType.clear()
for t in dtt:
self.cmbDefaultTextType.addItem(QIcon.fromTheme(t[2]), t[1], t[0])
i = self.cmbDefaultTextType.findData(settings.defaultTextType)
if i != -1:
self.cmbDefaultTextType.setCurrentIndex(i)
self.cmbDefaultTextType.currentIndexChanged.connect(self.saveSettingsChanged)
# Views
self.tabViews.setCurrentIndex(0)
lst = ["Nothing", "POV", "Label", "Progress", "Compile"]
@ -154,6 +167,7 @@ class settingsWindow(QWidget, Ui_Settings):
settings.autoSaveNoChangesDelay = int(self.txtAutoSaveNoChanges.text())
self.mw.saveTimer.setInterval(settings.autoSaveDelay * 60 * 1000)
self.mw.saveTimerNoChanges.setInterval(settings.autoSaveNoChangesDelay * 1000)
settings.defaultTextType = self.cmbDefaultTextType.currentData()
####################################################################################################
# VIEWS #

View file

@ -222,7 +222,7 @@ def setThemeEditorDatas(editor, themeDatas, pixmap, screenRect):
def addThemePreviewText(pixmap, themeDatas, screenRect):
# Text
previewText = textEditView()
previewText = textEditView(highlighting=True)
previewText.setFrameStyle(QFrame.NoFrame)
previewText.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
previewText.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)

View file

@ -180,6 +180,30 @@ class Ui_Settings(object):
self.chkSaveOnQuit.setObjectName("chkSaveOnQuit")
self.verticalLayout_6.addWidget(self.chkSaveOnQuit)
self.verticalLayout_7.addWidget(self.groupBox)
self.groupBox_11 = QtWidgets.QGroupBox(self.stackedWidgetPage1)
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
self.groupBox_11.setFont(font)
self.groupBox_11.setObjectName("groupBox_11")
self.verticalLayout_19 = QtWidgets.QVBoxLayout(self.groupBox_11)
self.verticalLayout_19.setObjectName("verticalLayout_19")
self.label_35 = QtWidgets.QLabel(self.groupBox_11)
font = QtGui.QFont()
font.setBold(False)
font.setWeight(50)
self.label_35.setFont(font)
self.label_35.setWordWrap(True)
self.label_35.setObjectName("label_35")
self.verticalLayout_19.addWidget(self.label_35)
self.cmbDefaultTextType = QtWidgets.QComboBox(self.groupBox_11)
font = QtGui.QFont()
font.setBold(False)
font.setWeight(50)
self.cmbDefaultTextType.setFont(font)
self.cmbDefaultTextType.setObjectName("cmbDefaultTextType")
self.verticalLayout_19.addWidget(self.cmbDefaultTextType)
self.verticalLayout_7.addWidget(self.groupBox_11)
spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_7.addItem(spacerItem2)
self.stack.addWidget(self.stackedWidgetPage1)
@ -1202,6 +1226,8 @@ class Ui_Settings(object):
self.chkAutoSaveNoChanges.setText(_translate("Settings", "If no changes during"))
self.label_14.setText(_translate("Settings", "seconds."))
self.chkSaveOnQuit.setText(_translate("Settings", "Save on quit"))
self.groupBox_11.setTitle(_translate("Settings", "Default text format"))
self.label_35.setText(_translate("Settings", "The format set by default when you create a new text item. You can change this on a per item basis."))
self.lblTitleViews.setText(_translate("Settings", "Views settings"))
self.groupBox_3.setTitle(_translate("Settings", "Colors"))
self.label_3.setText(_translate("Settings", "Icon color:"))

View file

@ -347,6 +347,47 @@ text-align:center;</string>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_11">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="title">
<string>Default text format</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_19">
<item>
<widget class="QLabel" name="label_35">
<property name="font">
<font>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>The format set by default when you create a new text item. You can change this on a per item basis.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="cmbDefaultTextType">
<property name="font">
<font>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">

View file

@ -5,6 +5,7 @@ from qt import *
from enums import *
from functions import *
from models.outlineModel import *
import settings
class outlineBasics(QAbstractItemView):
@ -149,7 +150,7 @@ class outlineBasics(QAbstractItemView):
parent = self.currentIndex()
if _type == "text":
_type = self.model()._defaultTextType
_type = settings.defaultTextType
item = outlineItem(title=qApp.translate("outlineBasics", "New"), _type=_type)
self.model().appendItem(item, parent)

View file

@ -9,6 +9,8 @@ from models.plotModel import *
from models.persosProxyModel import *
import settings
import locale
import imp
locale.setlocale(locale.LC_ALL, '')
@ -310,6 +312,10 @@ class welcome(QWidget, Ui_welcome):
self.tree.expandAll()
def loadDefaultDatas(self):
# Empty settings
imp.reload(settings)
# Données
self.mw.mdlFlatData = QStandardItemModel(2, 8, self.mw)
@ -353,7 +359,7 @@ class welcome(QWidget, Ui_welcome):
root = self.mw.mdlOutline.rootItem
_type = self.cmbDefaultType.currentData()
self.mw.mdlOutline._defaultTextType = _type
settings.defaultTextType = _type
def addElement(parent, datas):
if len(datas) == 2 and datas[1][1] == None or \