mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-21 21:32:26 +12:00
Towards a much better, multi-item, property view
This commit is contained in:
parent
7f826b83d9
commit
56306a819c
|
@ -1,6 +1,7 @@
|
|||
FORMS += ../src/ui/mainWindow.ui
|
||||
FORMS += ../src/ui/sldImportance_ui.ui
|
||||
FORMS += ../src/ui/editors/editorWidget_ui.ui
|
||||
FORMS += ../src/ui/views/propertiesView_ui.ui
|
||||
|
||||
|
||||
SOURCES += ../src/main.py
|
||||
|
|
|
@ -21,6 +21,12 @@ def toFloat(text):
|
|||
else:
|
||||
return 0.
|
||||
|
||||
def toString(text):
|
||||
if text == None:
|
||||
return ""
|
||||
else:
|
||||
return str(text)
|
||||
|
||||
def drawProgress(painter, rect, progress, radius=0):
|
||||
painter.setPen(Qt.NoPen)
|
||||
painter.setBrush(QColor("#dddddd"))
|
||||
|
|
|
@ -163,6 +163,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
self.treePlanOutline.setModelPersos(self.mdlPersos)
|
||||
self.treePlanOutline.setModelLabels(self.mdlLabels)
|
||||
self.treePlanOutline.setModelStatus(self.mdlStatus)
|
||||
self.viewRedacProperties.setModels(self.mdlOutline, self.mdlPersos, self.mdlLabels, self.mdlStatus)
|
||||
|
||||
self.treePlanOutline.setModel(self.mdlOutline)
|
||||
self.cmbPlanPOV.setModels(self.mdlPersos, self.mdlOutline)
|
||||
|
@ -192,29 +193,19 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
self.btnRedacRemoveItem.clicked.connect(self.outlineRemoveItems)
|
||||
self.btnPlanRemoveItem.clicked.connect(self.outlineRemoveItems)
|
||||
|
||||
self.cmbRedacPOV.setModels(self.mdlPersos, self.mdlOutline)
|
||||
self.cmbRedacLabel.setModels(self.mdlLabels, self.mdlOutline)
|
||||
self.cmbRedacStatus.setModels(self.mdlStatus, self.mdlOutline)
|
||||
#self.chkRedacCompile.setModel(self.mdlOutline)
|
||||
|
||||
self.mprOutline = QDataWidgetMapper()
|
||||
self.mprOutline.setModel(self.mdlOutline)
|
||||
mapping = [
|
||||
(self.txtRedacSummarySentance, Outline.summarySentance.value),
|
||||
(self.txtRedacSummaryFull, Outline.summaryFull.value),
|
||||
(self.txtRedacNotes, Outline.notes.value),
|
||||
(self.txtRedacTitle, Outline.title.value),
|
||||
(self.txtRedacGoal, Outline.setGoal.value)
|
||||
(self.txtRedacNotes, Outline.notes.value)
|
||||
]
|
||||
for w, i in mapping:
|
||||
self.mprOutline.addMapping(w, i)
|
||||
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(lambda idx: self.mprOutline.setRootIndex(idx.parent()))
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.mprOutline.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.cmbRedacPOV.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.cmbRedacLabel.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.cmbRedacStatus.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.chkRedacCompile.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().selectionChanged.connect(lambda: self.viewRedacProperties.selectionChanged(self.treeRedacOutline))
|
||||
#self.treeRedacOutline.selectionModel().currentChanged.connect(self.redacEditor.setCurrentModelIndex)
|
||||
self.treeRedacOutline.selectionModel().selectionChanged.connect(self.redacEditor.setView)
|
||||
self.treeRedacOutline.selectionModel().currentChanged.connect(self.redacEditor.txtRedacText.setCurrentModelIndex)
|
||||
|
|
|
@ -70,6 +70,8 @@ class editorWidget(QWidget, Ui_editorWidget_ui):
|
|||
index = QModelIndex()
|
||||
item = self._model.rootItem
|
||||
|
||||
self.currentIndex = index
|
||||
|
||||
def addTitle(itm):
|
||||
edt = customTextEdit(self, html="<h{l}>{t}</h{l}>".format(l=min(itm.level()+1, 5), t=itm.title()), autoResize=True)
|
||||
edt.setFrameShape(QFrame.NoFrame)
|
||||
|
|
|
@ -831,16 +831,6 @@ class Ui_MainWindow(object):
|
|||
self.verticalLayout_16 = QtWidgets.QVBoxLayout(self.layoutWidget1)
|
||||
self.verticalLayout_16.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_16.setObjectName("verticalLayout_16")
|
||||
self.txtRedacTitle = QtWidgets.QLineEdit(self.layoutWidget1)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.txtRedacTitle.setFont(font)
|
||||
self.txtRedacTitle.setStyleSheet("background:transparent;")
|
||||
self.txtRedacTitle.setText("")
|
||||
self.txtRedacTitle.setFrame(False)
|
||||
self.txtRedacTitle.setObjectName("txtRedacTitle")
|
||||
self.verticalLayout_16.addWidget(self.txtRedacTitle)
|
||||
self.redacEditor = editorWidget(self.layoutWidget1)
|
||||
self.redacEditor.setObjectName("redacEditor")
|
||||
self.verticalLayout_16.addWidget(self.redacEditor)
|
||||
|
@ -928,66 +918,13 @@ class Ui_MainWindow(object):
|
|||
self.groupBox_4.setFlat(True)
|
||||
self.groupBox_4.setCheckable(True)
|
||||
self.groupBox_4.setObjectName("groupBox_4")
|
||||
self.formLayout_5 = QtWidgets.QFormLayout(self.groupBox_4)
|
||||
self.formLayout_5.setContentsMargins(0, 0, 0, 0)
|
||||
self.formLayout_5.setObjectName("formLayout_5")
|
||||
self.lblRedacPOV = QtWidgets.QLabel(self.groupBox_4)
|
||||
self.lblRedacPOV.setObjectName("lblRedacPOV")
|
||||
self.formLayout_5.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.lblRedacPOV)
|
||||
self.cmbRedacPOV = cmbOutlinePersoChoser(self.groupBox_4)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbRedacPOV.sizePolicy().hasHeightForWidth())
|
||||
self.cmbRedacPOV.setSizePolicy(sizePolicy)
|
||||
self.cmbRedacPOV.setFrame(False)
|
||||
self.cmbRedacPOV.setObjectName("cmbRedacPOV")
|
||||
self.formLayout_5.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cmbRedacPOV)
|
||||
self.label_30 = QtWidgets.QLabel(self.groupBox_4)
|
||||
self.label_30.setObjectName("label_30")
|
||||
self.formLayout_5.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_30)
|
||||
self.cmbRedacStatus = cmbOutlineStatusChoser(self.groupBox_4)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbRedacStatus.sizePolicy().hasHeightForWidth())
|
||||
self.cmbRedacStatus.setSizePolicy(sizePolicy)
|
||||
self.cmbRedacStatus.setFrame(False)
|
||||
self.cmbRedacStatus.setObjectName("cmbRedacStatus")
|
||||
self.formLayout_5.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.cmbRedacStatus)
|
||||
self.label_32 = QtWidgets.QLabel(self.groupBox_4)
|
||||
self.label_32.setObjectName("label_32")
|
||||
self.formLayout_5.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_32)
|
||||
self.chkRedacCompile = chkOutlineCompile(self.groupBox_4)
|
||||
self.chkRedacCompile.setText("")
|
||||
self.chkRedacCompile.setObjectName("chkRedacCompile")
|
||||
self.formLayout_5.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.chkRedacCompile)
|
||||
self.label_29 = QtWidgets.QLabel(self.groupBox_4)
|
||||
self.label_29.setObjectName("label_29")
|
||||
self.formLayout_5.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.label_29)
|
||||
self.txtRedacGoal = QtWidgets.QLineEdit(self.groupBox_4)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.txtRedacGoal.sizePolicy().hasHeightForWidth())
|
||||
self.txtRedacGoal.setSizePolicy(sizePolicy)
|
||||
self.txtRedacGoal.setAutoFillBackground(False)
|
||||
self.txtRedacGoal.setStyleSheet("border-radius: 6px;")
|
||||
self.txtRedacGoal.setFrame(False)
|
||||
self.txtRedacGoal.setObjectName("txtRedacGoal")
|
||||
self.formLayout_5.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.txtRedacGoal)
|
||||
self.label_33 = QtWidgets.QLabel(self.groupBox_4)
|
||||
self.label_33.setObjectName("label_33")
|
||||
self.formLayout_5.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_33)
|
||||
self.cmbRedacLabel = cmbOutlineLabelChoser(self.groupBox_4)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbRedacLabel.sizePolicy().hasHeightForWidth())
|
||||
self.cmbRedacLabel.setSizePolicy(sizePolicy)
|
||||
self.cmbRedacLabel.setFrame(False)
|
||||
self.cmbRedacLabel.setObjectName("cmbRedacLabel")
|
||||
self.formLayout_5.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.cmbRedacLabel)
|
||||
self.verticalLayout_28 = QtWidgets.QVBoxLayout(self.groupBox_4)
|
||||
self.verticalLayout_28.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_28.setObjectName("verticalLayout_28")
|
||||
self.viewRedacProperties = propertiesView(self.groupBox_4)
|
||||
self.viewRedacProperties.setMinimumSize(QtCore.QSize(0, 50))
|
||||
self.viewRedacProperties.setObjectName("viewRedacProperties")
|
||||
self.verticalLayout_28.addWidget(self.viewRedacProperties)
|
||||
self.verticalLayout_20.addWidget(self.groupBox_4)
|
||||
self.groupBox_5 = collapsibleGroupBox2(self.tab_17)
|
||||
self.groupBox_5.setFlat(True)
|
||||
|
@ -1312,12 +1249,6 @@ class Ui_MainWindow(object):
|
|||
self.btnRedacFolderOutline.setText(_translate("MainWindow", "Outline"))
|
||||
self.btnRedacFullscreen.setShortcut(_translate("MainWindow", "F11"))
|
||||
self.groupBox_4.setTitle(_translate("MainWindow", "Properties"))
|
||||
self.lblRedacPOV.setText(_translate("MainWindow", "POV"))
|
||||
self.label_30.setText(_translate("MainWindow", "Status"))
|
||||
self.label_32.setText(_translate("MainWindow", "Compile"))
|
||||
self.label_29.setText(_translate("MainWindow", "Goal"))
|
||||
self.txtRedacGoal.setPlaceholderText(_translate("MainWindow", "Word count"))
|
||||
self.label_33.setText(_translate("MainWindow", "Label"))
|
||||
self.groupBox_5.setTitle(_translate("MainWindow", "Scene summary"))
|
||||
self.txtRedacSummarySentance.setPlaceholderText(_translate("MainWindow", "One line scene summary"))
|
||||
self.groupBox_6.setTitle(_translate("MainWindow", "Notes"))
|
||||
|
@ -1368,12 +1299,10 @@ class Ui_MainWindow(object):
|
|||
self.actLabels.setText(_translate("MainWindow", "Labels..."))
|
||||
self.actStatus.setText(_translate("MainWindow", "Status..."))
|
||||
|
||||
from ui.collapsibleGroupBox2 import collapsibleGroupBox2
|
||||
from ui.cmbOutlineLabelChoser import cmbOutlineLabelChoser
|
||||
from ui.sldImportance import sldImportance
|
||||
from ui.cmbOutlineStatusChoser import cmbOutlineStatusChoser
|
||||
from ui.views.outlineView import outlineView
|
||||
from ui.chkOutlineCompile import chkOutlineCompile
|
||||
from ui.views.treeView import treeView
|
||||
from ui.editors.editorWidget import editorWidget
|
||||
from ui.cmbOutlinePersoChoser import cmbOutlinePersoChoser
|
||||
from ui.views.outlineView import outlineView
|
||||
from ui.sldImportance import sldImportance
|
||||
from ui.collapsibleGroupBox2 import collapsibleGroupBox2
|
||||
from ui.editors.editorWidget import editorWidget
|
||||
from ui.views.propertiesView import propertiesView
|
||||
|
|
|
@ -1608,25 +1608,6 @@
|
|||
</widget>
|
||||
<widget class="QWidget" name="layoutWidget">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_16">
|
||||
<item>
|
||||
<widget class="QLineEdit" name="txtRedacTitle">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:transparent;</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="editorWidget" name="redacEditor" native="true"/>
|
||||
</item>
|
||||
|
@ -1840,110 +1821,17 @@
|
|||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout_5">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_28">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lblRedacPOV">
|
||||
<property name="text">
|
||||
<string>POV</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="cmbOutlinePersoChoser" name="cmbRedacPOV">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_30">
|
||||
<property name="text">
|
||||
<string>Status</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="cmbOutlineStatusChoser" name="cmbRedacStatus">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_32">
|
||||
<property name="text">
|
||||
<string>Compile</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="chkOutlineCompile" name="chkRedacCompile">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_29">
|
||||
<property name="text">
|
||||
<string>Goal</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QLineEdit" name="txtRedacGoal">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">border-radius: 6px;</string>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Word count</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_33">
|
||||
<property name="text">
|
||||
<string>Label</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="cmbOutlineLabelChoser" name="cmbRedacLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
<item>
|
||||
<widget class="propertiesView" name="viewRedacProperties" native="true">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>50</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -2353,16 +2241,6 @@
|
|||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlinePersoChoser.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>cmbOutlineStatusChoser</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlineStatusChoser.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>chkOutlineCompile</class>
|
||||
<extends>QCheckBox</extends>
|
||||
<header>ui.chkOutlineCompile.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>editorWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
|
@ -2386,9 +2264,10 @@
|
|||
<header>ui.views.treeView.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>cmbOutlineLabelChoser</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlineLabelChoser.h</header>
|
||||
<class>propertiesView</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>ui.views.propertiesView.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
|
|
|
@ -90,7 +90,7 @@ class Ui_Settings(object):
|
|||
self.verticalLayout.addWidget(self.tabWidget)
|
||||
|
||||
self.retranslateUi(Settings)
|
||||
self.tabWidget.setCurrentIndex(1)
|
||||
self.tabWidget.setCurrentIndex(0)
|
||||
QtCore.QMetaObject.connectSlotsByName(Settings)
|
||||
|
||||
def retranslateUi(self, Settings):
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<item>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>1</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab">
|
||||
<attribute name="title">
|
||||
|
|
108
src/ui/views/lineEditView.py
Normal file
108
src/ui/views/lineEditView.py
Normal file
|
@ -0,0 +1,108 @@
|
|||
#!/usr/bin/env python
|
||||
#--!-- coding: utf8 --!--
|
||||
|
||||
from qt import *
|
||||
from enums import *
|
||||
from functions import *
|
||||
|
||||
class lineEditView(QLineEdit):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
QLineEdit.__init__(self, parent)
|
||||
self._column = Outline.title.value
|
||||
self._indexes = None
|
||||
self._index = None
|
||||
self._placeholderText = None
|
||||
self._updating = False
|
||||
|
||||
def setModel(self, model):
|
||||
self._model = model
|
||||
|
||||
def setColumn(self, col):
|
||||
self._column = col
|
||||
|
||||
def setCurrentModelIndex(self, index):
|
||||
self._indexes = None
|
||||
if index.isValid():
|
||||
if index.column() != self._column:
|
||||
index = index.sibling(index.row(), self._column)
|
||||
self._index = index
|
||||
self.item = index.internalPointer()
|
||||
if self._placeholderText != None:
|
||||
self.setPlaceholderText(self._placeholderText)
|
||||
self.textEdited.connect(self.submit)
|
||||
self._model.dataChanged.connect(self.update)
|
||||
self.updateText()
|
||||
|
||||
def setCurrentModelIndexes(self, indexes):
|
||||
self._indexes = []
|
||||
self._index = None
|
||||
|
||||
for i in indexes:
|
||||
if i.isValid():
|
||||
if i.column() != self._column:
|
||||
i = i.sibling(i.row(), self._column)
|
||||
self._indexes.append(i)
|
||||
|
||||
self.textEdited.connect(self.submit)
|
||||
self._model.dataChanged.connect(self.update)
|
||||
self.updateText()
|
||||
|
||||
def submit(self):
|
||||
if self._index:
|
||||
item = self._index.internalPointer()
|
||||
if self.text() != item.data(self._column):
|
||||
self._model.setData(self._index, self.text())
|
||||
|
||||
elif self._indexes:
|
||||
self._updating = True
|
||||
for i in self._indexes:
|
||||
item = i.internalPointer()
|
||||
if self.text() != item.data(self._column):
|
||||
self._model.setData(i, self.text())
|
||||
self._updating = False
|
||||
|
||||
def update(self, topLeft, bottomRight):
|
||||
|
||||
if self._updating:
|
||||
# We are currently putting data in the model, so no updates
|
||||
return
|
||||
|
||||
if self._index:
|
||||
if topLeft.row() <= self._index.row() <= bottomRight.row():
|
||||
self.updateText()
|
||||
|
||||
elif self._indexes:
|
||||
update = False
|
||||
for i in self._indexes:
|
||||
if topLeft.row() <= i.row() <= bottomRight.row():
|
||||
update = True
|
||||
if update:
|
||||
self.updateText()
|
||||
|
||||
def updateText(self):
|
||||
|
||||
if self._index:
|
||||
item = self._index.internalPointer()
|
||||
txt = toString(item.data(self._column))
|
||||
if self.text() != txt:
|
||||
self.setText(txt)
|
||||
|
||||
elif self._indexes:
|
||||
t = []
|
||||
same = True
|
||||
for i in self._indexes:
|
||||
item = i.internalPointer()
|
||||
t.append(str(item.data(self._column)))
|
||||
|
||||
for t2 in t[1:]:
|
||||
if t2 != t[0]:
|
||||
same = False
|
||||
|
||||
if same:
|
||||
self.setText(t[0])
|
||||
else:
|
||||
self.setText("")
|
||||
self._placeholderText = self.placeholderText()
|
||||
self.setPlaceholderText("Various")
|
||||
|
58
src/ui/views/propertiesView.py
Normal file
58
src/ui/views/propertiesView.py
Normal file
|
@ -0,0 +1,58 @@
|
|||
#!/usr/bin/env python
|
||||
#--!-- coding: utf8 --!--
|
||||
|
||||
from qt import *
|
||||
from enums import *
|
||||
from ui.views.propertiesView_ui import *
|
||||
|
||||
class propertiesView(QWidget, Ui_propertiesView):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
QWidget.__init__(self)
|
||||
self.setupUi(self)
|
||||
self.txtGoal.setColumn(Outline.setGoal.value)
|
||||
|
||||
def setModels(self, mdlOutline, mdlPersos, mdlLabels, mdlStatus):
|
||||
self.cmbPOV.setModels(mdlPersos, mdlOutline)
|
||||
self.cmbLabel.setModels(mdlLabels, mdlOutline)
|
||||
self.cmbStatus.setModels(mdlStatus, mdlOutline)
|
||||
self.chkCompile.setModel(mdlOutline)
|
||||
self.txtTitle.setModel(mdlOutline)
|
||||
self.txtGoal.setModel(mdlOutline)
|
||||
|
||||
def getIndexes(self, sourceView):
|
||||
"Returns a list of indexes from list of QItemSelectionRange"
|
||||
indexes = []
|
||||
|
||||
for i in sourceView.selectionModel().selection().indexes():
|
||||
if i.column() != 0:
|
||||
continue
|
||||
|
||||
if i not in indexes:
|
||||
indexes.append(i)
|
||||
|
||||
return indexes
|
||||
|
||||
def selectionChanged(self, sourceView):
|
||||
|
||||
indexes = self.getIndexes(sourceView)
|
||||
#print(indexes)
|
||||
if len(indexes) == 0:
|
||||
self.setEnabled(False)
|
||||
|
||||
elif len(indexes) == 1:
|
||||
self.setEnabled(True)
|
||||
idx = indexes[0]
|
||||
self.cmbPOV.setCurrentModelIndex(idx)
|
||||
self.cmbLabel.setCurrentModelIndex(idx)
|
||||
self.cmbStatus.setCurrentModelIndex(idx)
|
||||
self.chkCompile.setCurrentModelIndex(idx)
|
||||
self.txtTitle.setCurrentModelIndex(idx)
|
||||
self.txtGoal.setCurrentModelIndex(idx)
|
||||
|
||||
else:
|
||||
print("Multiple selection, Work in progress")
|
||||
self.txtTitle.setCurrentModelIndexes(indexes)
|
||||
self.txtGoal.setCurrentModelIndexes(indexes)
|
||||
#FIXME: do the other views
|
||||
|
188
src/ui/views/propertiesView_ui.py
Normal file
188
src/ui/views/propertiesView_ui.py
Normal file
|
@ -0,0 +1,188 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'src/ui/views/propertiesView_ui.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.4.1
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_propertiesView(object):
|
||||
def setupUi(self, propertiesView):
|
||||
propertiesView.setObjectName("propertiesView")
|
||||
propertiesView.resize(192, 153)
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(propertiesView)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.txtTitle = lineEditView(propertiesView)
|
||||
font = QtGui.QFont()
|
||||
font.setBold(True)
|
||||
font.setWeight(75)
|
||||
self.txtTitle.setFont(font)
|
||||
self.txtTitle.setStyleSheet("background:transparent;")
|
||||
self.txtTitle.setFrame(False)
|
||||
self.txtTitle.setObjectName("txtTitle")
|
||||
self.verticalLayout.addWidget(self.txtTitle)
|
||||
self.stack = QtWidgets.QStackedWidget(propertiesView)
|
||||
self.stack.setObjectName("stack")
|
||||
self.page = QtWidgets.QWidget()
|
||||
self.page.setObjectName("page")
|
||||
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page)
|
||||
self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||
self.formLayout = QtWidgets.QFormLayout()
|
||||
self.formLayout.setObjectName("formLayout")
|
||||
self.lblPOV = QtWidgets.QLabel(self.page)
|
||||
self.lblPOV.setObjectName("lblPOV")
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.lblPOV)
|
||||
self.cmbPOV = cmbOutlinePersoChoser(self.page)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbPOV.sizePolicy().hasHeightForWidth())
|
||||
self.cmbPOV.setSizePolicy(sizePolicy)
|
||||
self.cmbPOV.setFrame(False)
|
||||
self.cmbPOV.setObjectName("cmbPOV")
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cmbPOV)
|
||||
self.label_30 = QtWidgets.QLabel(self.page)
|
||||
self.label_30.setObjectName("label_30")
|
||||
self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_30)
|
||||
self.cmbStatus = cmbOutlineStatusChoser(self.page)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbStatus.sizePolicy().hasHeightForWidth())
|
||||
self.cmbStatus.setSizePolicy(sizePolicy)
|
||||
self.cmbStatus.setFrame(False)
|
||||
self.cmbStatus.setObjectName("cmbStatus")
|
||||
self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.cmbStatus)
|
||||
self.label_33 = QtWidgets.QLabel(self.page)
|
||||
self.label_33.setObjectName("label_33")
|
||||
self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_33)
|
||||
self.cmbLabel = cmbOutlineLabelChoser(self.page)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbLabel.sizePolicy().hasHeightForWidth())
|
||||
self.cmbLabel.setSizePolicy(sizePolicy)
|
||||
self.cmbLabel.setFrame(False)
|
||||
self.cmbLabel.setObjectName("cmbLabel")
|
||||
self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.cmbLabel)
|
||||
self.label_32 = QtWidgets.QLabel(self.page)
|
||||
self.label_32.setObjectName("label_32")
|
||||
self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_32)
|
||||
self.chkCompile = chkOutlineCompile(self.page)
|
||||
self.chkCompile.setText("")
|
||||
self.chkCompile.setObjectName("chkCompile")
|
||||
self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.chkCompile)
|
||||
self.label_29 = QtWidgets.QLabel(self.page)
|
||||
self.label_29.setObjectName("label_29")
|
||||
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.label_29)
|
||||
self.txtGoal = lineEditView(self.page)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.txtGoal.sizePolicy().hasHeightForWidth())
|
||||
self.txtGoal.setSizePolicy(sizePolicy)
|
||||
self.txtGoal.setAutoFillBackground(False)
|
||||
self.txtGoal.setStyleSheet("border-radius: 6px;")
|
||||
self.txtGoal.setFrame(False)
|
||||
self.txtGoal.setObjectName("txtGoal")
|
||||
self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.txtGoal)
|
||||
self.verticalLayout_2.addLayout(self.formLayout)
|
||||
self.stack.addWidget(self.page)
|
||||
self.page_2 = QtWidgets.QWidget()
|
||||
self.page_2.setObjectName("page_2")
|
||||
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_2)
|
||||
self.verticalLayout_3.setSpacing(0)
|
||||
self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
||||
self.formLayout_2 = QtWidgets.QFormLayout()
|
||||
self.formLayout_2.setObjectName("formLayout_2")
|
||||
self.lblPOV_2 = QtWidgets.QLabel(self.page_2)
|
||||
self.lblPOV_2.setObjectName("lblPOV_2")
|
||||
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.lblPOV_2)
|
||||
self.cmbPOVMulti = cmbOutlinePersoChoser(self.page_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbPOVMulti.sizePolicy().hasHeightForWidth())
|
||||
self.cmbPOVMulti.setSizePolicy(sizePolicy)
|
||||
self.cmbPOVMulti.setFrame(False)
|
||||
self.cmbPOVMulti.setObjectName("cmbPOVMulti")
|
||||
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cmbPOVMulti)
|
||||
self.label_31 = QtWidgets.QLabel(self.page_2)
|
||||
self.label_31.setObjectName("label_31")
|
||||
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_31)
|
||||
self.cmbStatusMulti = cmbOutlineStatusChoser(self.page_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbStatusMulti.sizePolicy().hasHeightForWidth())
|
||||
self.cmbStatusMulti.setSizePolicy(sizePolicy)
|
||||
self.cmbStatusMulti.setFrame(False)
|
||||
self.cmbStatusMulti.setObjectName("cmbStatusMulti")
|
||||
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.cmbStatusMulti)
|
||||
self.label_34 = QtWidgets.QLabel(self.page_2)
|
||||
self.label_34.setObjectName("label_34")
|
||||
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_34)
|
||||
self.cmbLabelMulti = cmbOutlineLabelChoser(self.page_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.cmbLabelMulti.sizePolicy().hasHeightForWidth())
|
||||
self.cmbLabelMulti.setSizePolicy(sizePolicy)
|
||||
self.cmbLabelMulti.setFrame(False)
|
||||
self.cmbLabelMulti.setObjectName("cmbLabelMulti")
|
||||
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.cmbLabelMulti)
|
||||
self.label_35 = QtWidgets.QLabel(self.page_2)
|
||||
self.label_35.setObjectName("label_35")
|
||||
self.formLayout_2.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_35)
|
||||
self.chkCompileMulti = chkOutlineCompile(self.page_2)
|
||||
self.chkCompileMulti.setText("")
|
||||
self.chkCompileMulti.setObjectName("chkCompileMulti")
|
||||
self.formLayout_2.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.chkCompileMulti)
|
||||
self.label_36 = QtWidgets.QLabel(self.page_2)
|
||||
self.label_36.setObjectName("label_36")
|
||||
self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.label_36)
|
||||
self.txtGoalMulti = lineEditView(self.page_2)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.txtGoalMulti.sizePolicy().hasHeightForWidth())
|
||||
self.txtGoalMulti.setSizePolicy(sizePolicy)
|
||||
self.txtGoalMulti.setAutoFillBackground(False)
|
||||
self.txtGoalMulti.setStyleSheet("border-radius: 6px;")
|
||||
self.txtGoalMulti.setFrame(False)
|
||||
self.txtGoalMulti.setObjectName("txtGoalMulti")
|
||||
self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.txtGoalMulti)
|
||||
self.verticalLayout_3.addLayout(self.formLayout_2)
|
||||
self.stack.addWidget(self.page_2)
|
||||
self.verticalLayout.addWidget(self.stack)
|
||||
|
||||
self.retranslateUi(propertiesView)
|
||||
self.stack.setCurrentIndex(0)
|
||||
QtCore.QMetaObject.connectSlotsByName(propertiesView)
|
||||
|
||||
def retranslateUi(self, propertiesView):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
propertiesView.setWindowTitle(_translate("propertiesView", "Form"))
|
||||
self.lblPOV.setText(_translate("propertiesView", "POV"))
|
||||
self.label_30.setText(_translate("propertiesView", "Status"))
|
||||
self.label_33.setText(_translate("propertiesView", "Label"))
|
||||
self.label_32.setText(_translate("propertiesView", "Compile"))
|
||||
self.label_29.setText(_translate("propertiesView", "Goal"))
|
||||
self.txtGoal.setPlaceholderText(_translate("propertiesView", "Word count"))
|
||||
self.lblPOV_2.setText(_translate("propertiesView", "POV"))
|
||||
self.label_31.setText(_translate("propertiesView", "Status"))
|
||||
self.label_34.setText(_translate("propertiesView", "Label"))
|
||||
self.label_35.setText(_translate("propertiesView", "Compile"))
|
||||
self.label_36.setText(_translate("propertiesView", "Goal"))
|
||||
self.txtGoalMulti.setPlaceholderText(_translate("propertiesView", "Word count"))
|
||||
|
||||
from ui.chkOutlineCompile import chkOutlineCompile
|
||||
from ui.cmbOutlineLabelChoser import cmbOutlineLabelChoser
|
||||
from ui.cmbOutlineStatusChoser import cmbOutlineStatusChoser
|
||||
from ui.views.lineEditView import lineEditView
|
||||
from ui.cmbOutlinePersoChoser import cmbOutlinePersoChoser
|
305
src/ui/views/propertiesView_ui.ui
Normal file
305
src/ui/views/propertiesView_ui.ui
Normal file
|
@ -0,0 +1,305 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>propertiesView</class>
|
||||
<widget class="QWidget" name="propertiesView">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>192</width>
|
||||
<height>153</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="lineEditView" name="txtTitle">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:transparent;</string>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QStackedWidget" name="stack">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lblPOV">
|
||||
<property name="text">
|
||||
<string>POV</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="cmbOutlinePersoChoser" name="cmbPOV">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_30">
|
||||
<property name="text">
|
||||
<string>Status</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="cmbOutlineStatusChoser" name="cmbStatus">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_33">
|
||||
<property name="text">
|
||||
<string>Label</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="cmbOutlineLabelChoser" name="cmbLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_32">
|
||||
<property name="text">
|
||||
<string>Compile</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="chkOutlineCompile" name="chkCompile">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_29">
|
||||
<property name="text">
|
||||
<string>Goal</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="lineEditView" name="txtGoal">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">border-radius: 6px;</string>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Word count</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_2">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout_2">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lblPOV_2">
|
||||
<property name="text">
|
||||
<string>POV</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="cmbOutlinePersoChoser" name="cmbPOVMulti">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_31">
|
||||
<property name="text">
|
||||
<string>Status</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="cmbOutlineStatusChoser" name="cmbStatusMulti">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_34">
|
||||
<property name="text">
|
||||
<string>Label</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="cmbOutlineLabelChoser" name="cmbLabelMulti">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_35">
|
||||
<property name="text">
|
||||
<string>Compile</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="chkOutlineCompile" name="chkCompileMulti">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_36">
|
||||
<property name="text">
|
||||
<string>Goal</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="lineEditView" name="txtGoalMulti">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">border-radius: 6px;</string>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>Word count</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>cmbOutlinePersoChoser</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlinePersoChoser.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>cmbOutlineStatusChoser</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlineStatusChoser.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>chkOutlineCompile</class>
|
||||
<extends>QCheckBox</extends>
|
||||
<header>ui.chkOutlineCompile.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>cmbOutlineLabelChoser</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header>ui.cmbOutlineLabelChoser.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>lineEditView</class>
|
||||
<extends>QLineEdit</extends>
|
||||
<header>ui.views.lineEditView.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<outlineItem title="root" type="folder" compile="2" wordCount="2118" setGoal="112">
|
||||
<outlineItem title="root" type="folder" compile="2" wordCount="2124" setGoal="112">
|
||||
<outlineItem title="Nouveau" type="folder" compile="2" wordCount="15">
|
||||
<outlineItem title="Nouveau" type="scene" POV="1" label="2" status="2" compile="2" text="return QTextEdit.resizeEvent(self, e) ad ad ad ad adaasd ad adsdasd ad e drset" wordCount="15"/>
|
||||
</outlineItem>
|
||||
|
@ -51,7 +51,7 @@
|
|||
<outlineItem title="Nouveau" type="scene" label="0" compile="2" text="ASDASd ASD " wordCount="2"/>
|
||||
<outlineItem title="A" type="scene" label="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
</outlineItem>
|
||||
<outlineItem title="A" type="scene" POV="1" label="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
<outlineItem title="Same title" type="scene" POV="1" label="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
<outlineItem title="Nouveau" type="folder" status="2" compile="2" wordCount="596">
|
||||
<outlineItem title="Nouveau" type="scene" POV="0" label="0" status="0" compile="2" text="ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD adasaas adasds adssdawdas saasdASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD ASDASd ASD adasaas adasds adssdawdas saasdASDASd ASD ASDASd ASD ASDASd ASD aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" wordCount="211"/>
|
||||
<outlineItem title="Titre cool" type="scene" POV="0" label="0" status="1" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
|
@ -59,5 +59,5 @@
|
|||
<outlineItem title="Titre cool" type="scene" POV="0" label="1" status="3" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
<outlineItem title="Titre cool" type="scene" POV="0" label="0" status="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
</outlineItem>
|
||||
<outlineItem title="Titre cool" type="scene" POV="2" label="3" status="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd " wordCount="58" setGoal="50"/>
|
||||
<outlineItem title="Same title 2" type="scene" POV="2" label="1" status="0" compile="2" text="asdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasdasdasd asd asd asd asd asdasd asdaasd asdasd asd aasdasd asd asd asd asd asdasd asdaasd asdasd asdasd asd " wordCount="64" setGoal="1000"/>
|
||||
</outlineItem>
|
||||
|
|
Loading…
Reference in a new issue