mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-14 09:52:27 +12:00
Perso infos
This commit is contained in:
parent
0e28825649
commit
37810a7108
|
@ -17,6 +17,7 @@ SOURCES += ../src/settingsWindow.py
|
|||
SOURCES += ../src/models/outlineModel.py
|
||||
SOURCES += ../src/models/persosProxyModel.py
|
||||
SOURCES += ../src/models/plotModel.py
|
||||
SOURCES += ../src/models/persosModel.py
|
||||
SOURCES += ../src/models/references.py
|
||||
|
||||
SOURCES += ../src/ui/helpLabel.py
|
||||
|
|
|
@ -21,6 +21,8 @@ class Perso(Enum):
|
|||
summaryPara = 8
|
||||
summaryFull = 9
|
||||
notes = 10
|
||||
infoName = 11
|
||||
infoData = 12
|
||||
|
||||
class Plot(Enum):
|
||||
name = 0
|
||||
|
|
|
@ -193,9 +193,14 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
]:
|
||||
w.setCurrentModelIndex(index)
|
||||
|
||||
## Button color
|
||||
# Button color
|
||||
self.mdlPersos.updatePersoColor(index)
|
||||
|
||||
# Perso Infos
|
||||
self.tblPersoInfos.setRootIndex(index)
|
||||
|
||||
if self.mdlPersos.rowCount(index):
|
||||
self.updatePersoInfoView()
|
||||
|
||||
#if self.mdlPersosProxy:
|
||||
#idx = self.mdlPersosProxy.mapToSource(self.lstPersos.currentIndex())
|
||||
|
@ -213,6 +218,19 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
|
||||
#self.resizePersosInfos()
|
||||
|
||||
def updatePersoInfoView(self):
|
||||
# Hide columns
|
||||
for i in range(self.mdlPersos.columnCount()):
|
||||
self.tblPersoInfos.hideColumn(i)
|
||||
self.tblPersoInfos.showColumn(Perso.infoName.value)
|
||||
self.tblPersoInfos.showColumn(Perso.infoData.value)
|
||||
|
||||
self.tblPersoInfos.horizontalHeader().setSectionResizeMode(
|
||||
Perso.infoName.value, QHeaderView.ResizeToContents)
|
||||
self.tblPersoInfos.horizontalHeader().setSectionResizeMode(
|
||||
Perso.infoData.value, QHeaderView.Stretch)
|
||||
self.tblPersoInfos.verticalHeader().hide()
|
||||
|
||||
#def updatePersoColor(self):
|
||||
#if self.mdlPersosProxy:
|
||||
#idx = self.mdlPersosProxy.mapToSource(self.lstPersos.currentIndex())
|
||||
|
@ -634,6 +652,8 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
|
||||
# Persos
|
||||
self.lstPersos.setPersosModel(self.mdlPersos)
|
||||
self.tblPersoInfos.setModel(self.mdlPersos)
|
||||
|
||||
self.btnAddPerso.clicked.connect(self.mdlPersos.addPerso, AUC)
|
||||
self.btnRmPerso.clicked.connect(self.mdlPersos.removePerso, AUC)
|
||||
self.btnPersoColor.clicked.connect(self.mdlPersos.chosePersoColor, AUC)
|
||||
|
@ -646,10 +666,9 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
#self.tblPersoInfos.setModel(self.mdlPersosInfos)
|
||||
#self.tblPersoInfos.setRowHidden(0, True)
|
||||
|
||||
#FIXME
|
||||
#self.btnPersoAddInfo.clicked.connect(lambda:
|
||||
#self.mdlPersosInfos.insertRow(self.mdlPersosInfos.rowCount()), AUC)
|
||||
|
||||
self.btnPersoAddInfo.clicked.connect(self.mdlPersos.addPersoInfo, AUC)
|
||||
self.btnPersoRmInfo.clicked.connect(self.mdlPersos.removePersoInfo, AUC)
|
||||
|
||||
#self.mprPersos = QDataWidgetMapper()
|
||||
#self.mprPersos.setModel(self.mdlPersos)
|
||||
|
||||
|
@ -759,7 +778,12 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
self.mdlFlatData.setVerticalHeaderLabels(["Infos générales", "Summary"])
|
||||
self.tblDebugFlatData.setModel(self.mdlFlatData)
|
||||
self.tblDebugPersos.setModel(self.mdlPersos)
|
||||
#self.tblDebugPersosInfos.setModel(self.mdlPersosInfos)
|
||||
self.tblDebugPersosInfos.setModel(self.mdlPersos)
|
||||
self.tblDebugPersos.selectionModel().currentChanged.connect(
|
||||
lambda: self.tblDebugPersosInfos.setRootIndex(self.mdlPersos.index(
|
||||
self.tblDebugPersos.selectionModel().currentIndex().row(),
|
||||
Perso.name.value)), AUC)
|
||||
|
||||
self.tblDebugPlots.setModel(self.mdlPlots)
|
||||
self.tblDebugPlotsPersos.setModel(self.mdlPlots)
|
||||
self.tblDebugSubPlots.setModel(self.mdlPlots)
|
||||
|
@ -774,7 +798,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
self.treeDebugOutline.setModel(self.mdlOutline)
|
||||
self.lstDebugLabels.setModel(self.mdlLabels)
|
||||
self.lstDebugStatus.setModel(self.mdlStatus)
|
||||
self.mdlPersos.setHorizontalHeaderLabels([i.name for i in Perso])
|
||||
#self.mdlPersos.setHorizontalHeaderLabels([i.name for i in Perso])
|
||||
|
||||
|
||||
###############################################################################
|
||||
|
@ -843,7 +867,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
self.splitterRedac.setStretchFactor(0, 20)
|
||||
self.splitterRedac.setStretchFactor(1, 60)
|
||||
self.splitterRedac.setStretchFactor(2, 20)
|
||||
|
||||
|
||||
# Help box
|
||||
references = [
|
||||
(self.lytTabOverview,
|
||||
|
|
|
@ -31,7 +31,7 @@ class persosModel(QStandardItemModel):
|
|||
return self.item(row, Perso.importance.value).text()
|
||||
|
||||
###############################################################################
|
||||
# GENERAL QUERRIES
|
||||
# MODEL QUERRIES
|
||||
###############################################################################
|
||||
|
||||
def getPersosByImportance(self):
|
||||
|
@ -82,6 +82,7 @@ class persosModel(QStandardItemModel):
|
|||
and a column in mdlPersosInfos with same ID"""
|
||||
p = QStandardItem(self.tr("New character"))
|
||||
self.setPersoColor(p, randomColor(QColor(Qt.white)))
|
||||
|
||||
pid = self.getUniqueID()
|
||||
self.appendRow([p, QStandardItem(pid), QStandardItem("0")])
|
||||
|
||||
|
@ -129,11 +130,40 @@ class persosModel(QStandardItemModel):
|
|||
color = self.getPersoColorName(idx)
|
||||
self.mw.btnPersoColor.setStyleSheet("background:{};".format(color))
|
||||
|
||||
|
||||
###############################################################################
|
||||
# PERSO INFOS
|
||||
###############################################################################
|
||||
|
||||
def headerData(self, section, orientation, role=Qt.DisplayRole):
|
||||
if role == Qt.DisplayRole and orientation == Qt.Horizontal:
|
||||
if section == Perso.infoName.value:
|
||||
return self.tr("Name")
|
||||
elif section == Perso.infoData.value:
|
||||
return self.tr("Value")
|
||||
else:
|
||||
return Perso(section).name
|
||||
else:
|
||||
return QStandardItemModel.headerData(self, section, orientation, role=Qt.DisplayRole)
|
||||
|
||||
def addPersoInfo(self):
|
||||
#FIXME
|
||||
pass
|
||||
perso = self.itemFromIndex(self.currentPersoIndex())
|
||||
row = perso.rowCount()
|
||||
perso.setChild(row, Perso.infoName.value, QStandardItem(""))
|
||||
perso.setChild(row, Perso.infoData.value, QStandardItem(""))
|
||||
|
||||
self.mw.updatePersoInfoView()
|
||||
|
||||
def removePersoInfo(self):
|
||||
perso = self.itemFromIndex(self.currentPersoIndex())
|
||||
|
||||
rm = []
|
||||
for idx in self.mw.tblPersoInfos.selectedIndexes():
|
||||
if not idx.row() in rm:
|
||||
rm.append(idx.row())
|
||||
|
||||
rm.sort()
|
||||
rm.reverse()
|
||||
for r in rm:
|
||||
perso.takeRow(r)
|
||||
|
||||
|
|
@ -466,6 +466,7 @@ class Ui_MainWindow(object):
|
|||
self.verticalLayout_9.setObjectName("verticalLayout_9")
|
||||
self.tblPersoInfos = QtWidgets.QTableView(self.tab_12)
|
||||
self.tblPersoInfos.setAlternatingRowColors(True)
|
||||
self.tblPersoInfos.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
|
||||
self.tblPersoInfos.setTextElideMode(QtCore.Qt.ElideNone)
|
||||
self.tblPersoInfos.setObjectName("tblPersoInfos")
|
||||
self.verticalLayout_9.addWidget(self.tblPersoInfos)
|
||||
|
@ -484,12 +485,12 @@ class Ui_MainWindow(object):
|
|||
self.pushButton_3.setCheckable(True)
|
||||
self.pushButton_3.setObjectName("pushButton_3")
|
||||
self.horizontalLayout_9.addWidget(self.pushButton_3)
|
||||
self.pushButton_2 = QtWidgets.QPushButton(self.tab_12)
|
||||
self.pushButton_2.setText("")
|
||||
self.btnPersoRmInfo = QtWidgets.QPushButton(self.tab_12)
|
||||
self.btnPersoRmInfo.setText("")
|
||||
icon = QtGui.QIcon.fromTheme("list-remove")
|
||||
self.pushButton_2.setIcon(icon)
|
||||
self.pushButton_2.setObjectName("pushButton_2")
|
||||
self.horizontalLayout_9.addWidget(self.pushButton_2)
|
||||
self.btnPersoRmInfo.setIcon(icon)
|
||||
self.btnPersoRmInfo.setObjectName("btnPersoRmInfo")
|
||||
self.horizontalLayout_9.addWidget(self.btnPersoRmInfo)
|
||||
self.lineEdit = QtWidgets.QLineEdit(self.tab_12)
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.horizontalLayout_9.addWidget(self.lineEdit)
|
||||
|
@ -878,21 +879,15 @@ class Ui_MainWindow(object):
|
|||
self.tabWidget.addTab(self.tab_9, "")
|
||||
self.tab_10 = QtWidgets.QWidget()
|
||||
self.tab_10.setObjectName("tab_10")
|
||||
self.horizontalLayout_27 = QtWidgets.QHBoxLayout(self.tab_10)
|
||||
self.horizontalLayout_27.setObjectName("horizontalLayout_27")
|
||||
self.verticalLayout_19 = QtWidgets.QVBoxLayout(self.tab_10)
|
||||
self.verticalLayout_19.setObjectName("verticalLayout_19")
|
||||
self.tblDebugPersos = QtWidgets.QTableView(self.tab_10)
|
||||
self.tblDebugPersos.setObjectName("tblDebugPersos")
|
||||
self.horizontalLayout_27.addWidget(self.tblDebugPersos)
|
||||
self.tabWidget.addTab(self.tab_10, "")
|
||||
self.tab_16 = QtWidgets.QWidget()
|
||||
self.tab_16.setObjectName("tab_16")
|
||||
self.horizontalLayout_28 = QtWidgets.QHBoxLayout(self.tab_16)
|
||||
self.horizontalLayout_28.setObjectName("horizontalLayout_28")
|
||||
self.tblDebugPersosInfos = QtWidgets.QTableView(self.tab_16)
|
||||
self.tblDebugPersosInfos.setAlternatingRowColors(True)
|
||||
self.verticalLayout_19.addWidget(self.tblDebugPersos)
|
||||
self.tblDebugPersosInfos = QtWidgets.QTableView(self.tab_10)
|
||||
self.tblDebugPersosInfos.setObjectName("tblDebugPersosInfos")
|
||||
self.horizontalLayout_28.addWidget(self.tblDebugPersosInfos)
|
||||
self.tabWidget.addTab(self.tab_16, "")
|
||||
self.verticalLayout_19.addWidget(self.tblDebugPersosInfos)
|
||||
self.tabWidget.addTab(self.tab_10, "")
|
||||
self.tab_2 = QtWidgets.QWidget()
|
||||
self.tab_2.setObjectName("tab_2")
|
||||
self.horizontalLayout_11 = QtWidgets.QHBoxLayout(self.tab_2)
|
||||
|
@ -1039,12 +1034,12 @@ class Ui_MainWindow(object):
|
|||
self.stack.setCurrentIndex(1)
|
||||
self.tabMain.setCurrentIndex(2)
|
||||
self.tabSummary.setCurrentIndex(0)
|
||||
self.tabPersos.setCurrentIndex(0)
|
||||
self.tabPersos.setCurrentIndex(3)
|
||||
self.tabPlot.setCurrentIndex(0)
|
||||
self.comboBox_2.setCurrentIndex(0)
|
||||
self.stkPlotSummary.setCurrentIndex(0)
|
||||
self.tabRedacInfos.setCurrentIndex(0)
|
||||
self.tabWidget.setCurrentIndex(3)
|
||||
self.tabWidget.setCurrentIndex(1)
|
||||
self.btnPlotShowSummary.toggled['bool'].connect(self.grpPlotSummary.setVisible)
|
||||
self.comboBox_2.currentIndexChanged['int'].connect(self.stkPlotSummary.setCurrentIndex)
|
||||
self.btnPlanShowDetails.toggled['bool'].connect(self.frame.setVisible)
|
||||
|
@ -1139,7 +1134,6 @@ class Ui_MainWindow(object):
|
|||
self.tabMain.setTabText(self.tabMain.indexOf(self.lytTabRedac), _translate("MainWindow", "Redaction"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_9), _translate("MainWindow", "FlatData"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_10), _translate("MainWindow", "Persos"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_16), _translate("MainWindow", "Perso Infos"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Plots"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_20), _translate("MainWindow", "Outline"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Labels"))
|
||||
|
@ -1175,14 +1169,14 @@ class Ui_MainWindow(object):
|
|||
self.actSettings.setShortcut(_translate("MainWindow", "F8"))
|
||||
self.actCloseProject.setText(_translate("MainWindow", "Close project"))
|
||||
|
||||
from ui.views.plotTreeView import plotTreeView
|
||||
from ui.views.lineEditView import lineEditView
|
||||
from ui.views.outlineView import outlineView
|
||||
from ui.welcome import welcome
|
||||
from ui.views.treeView import treeView
|
||||
from ui.views.basicItemView import basicItemView
|
||||
from ui.views.plotTreeView import plotTreeView
|
||||
from ui.views.textEditView import textEditView
|
||||
from ui.views.metadataView import metadataView
|
||||
from ui.views.persoTreeView import persoTreeView
|
||||
from ui.views.basicItemView import basicItemView
|
||||
from ui.editors.mainEditor import mainEditor
|
||||
from ui.views.metadataView import metadataView
|
||||
from ui.views.outlineView import outlineView
|
||||
from ui.views.persoTreeView import persoTreeView
|
||||
from ui.views.treeView import treeView
|
||||
from ui.views.lineEditView import lineEditView
|
||||
from ui.sldImportance import sldImportance
|
||||
|
|
|
@ -717,7 +717,7 @@
|
|||
</widget>
|
||||
<widget class="QTabWidget" name="tabPersos">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
<number>3</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="infos">
|
||||
<attribute name="title">
|
||||
|
@ -913,6 +913,9 @@
|
|||
<property name="alternatingRowColors">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="textElideMode">
|
||||
<enum>Qt::ElideNone</enum>
|
||||
</property>
|
||||
|
@ -946,7 +949,7 @@
|
|||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_2">
|
||||
<widget class="QPushButton" name="btnPersoRmInfo">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
|
@ -1673,7 +1676,7 @@
|
|||
<enum>QTabWidget::West</enum>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>3</number>
|
||||
<number>1</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab_9">
|
||||
<attribute name="title">
|
||||
|
@ -1689,23 +1692,12 @@
|
|||
<attribute name="title">
|
||||
<string>Persos</string>
|
||||
</attribute>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_27">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_19">
|
||||
<item>
|
||||
<widget class="QTableView" name="tblDebugPersos"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_16">
|
||||
<attribute name="title">
|
||||
<string>Perso Infos</string>
|
||||
</attribute>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_28">
|
||||
<item>
|
||||
<widget class="QTableView" name="tblDebugPersosInfos">
|
||||
<property name="alternatingRowColors">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTableView" name="tblDebugPersosInfos"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
|
|
Loading…
Reference in a new issue