mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-17 11:22:28 +12:00
Basic plainText exporter working (preview only)
This commit is contained in:
parent
548df14b28
commit
16585c4a2a
|
@ -19,6 +19,10 @@ FORMS += ../manuskript/ui/views/basicItemView_ui.ui
|
||||||
FORMS += ../manuskript/ui/views/sldImportance_ui.ui
|
FORMS += ../manuskript/ui/views/sldImportance_ui.ui
|
||||||
FORMS += ../manuskript/ui/views/storylineView_ui.ui
|
FORMS += ../manuskript/ui/views/storylineView_ui.ui
|
||||||
|
|
||||||
|
FORMS += ../manuskript/ui/exporters/exporter_ui.ui
|
||||||
|
FORMS += ../manuskript/ui/exporters/exportersManager_ui.ui
|
||||||
|
FORMS += ../manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui
|
||||||
|
|
||||||
|
|
||||||
SOURCES += ../manuskript/exporter/__init__.py
|
SOURCES += ../manuskript/exporter/__init__.py
|
||||||
SOURCES += ../manuskript/load_save/version_0.py
|
SOURCES += ../manuskript/load_save/version_0.py
|
||||||
|
@ -59,6 +63,11 @@ SOURCES += ../manuskript/ui/views/textEditCompleter.py
|
||||||
SOURCES += ../manuskript/ui/views/textEditView.py
|
SOURCES += ../manuskript/ui/views/textEditView.py
|
||||||
SOURCES += ../manuskript/ui/views/treeView.py
|
SOURCES += ../manuskript/ui/views/treeView.py
|
||||||
SOURCES += ../manuskript/ui/welcome.py
|
SOURCES += ../manuskript/ui/welcome.py
|
||||||
|
SOURCES += ../manuskript/ui/exporters/exporter.py
|
||||||
|
SOURCES += ../manuskript/ui/exporters/exportersManager.py
|
||||||
|
SOURCES += ../manuskript/ui/exporters/manuskript/plainTextSettings.py
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TRANSLATIONS += manuskript_fr.ts
|
TRANSLATIONS += manuskript_fr.ts
|
||||||
TRANSLATIONS += manuskript_es.ts
|
TRANSLATIONS += manuskript_es.ts
|
||||||
|
|
2
makefile
2
makefile
|
@ -1,4 +1,4 @@
|
||||||
UI := $(wildcard manuskript/ui/*.ui) $(wildcard manuskript/ui/*/*.ui) $(wildcard manuskript/ui/*.qrc)
|
UI := $(wildcard manuskript/ui/*.ui) $(wildcard manuskript/ui/*/*.ui) $(wildcard manuskript/ui/*/*/*.ui) $(wildcard manuskript/ui/*.qrc)
|
||||||
UIs= $(UI:.ui=.py) $(UI:.qrc=_rc.py)
|
UIs= $(UI:.ui=.py) $(UI:.qrc=_rc.py)
|
||||||
TS := $(wildcard i18n/*.ts)
|
TS := $(wildcard i18n/*.ts)
|
||||||
QMs= $(TS:.ts=.qm)
|
QMs= $(TS:.ts=.qm)
|
||||||
|
|
|
@ -81,4 +81,24 @@ class basicFormat:
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def preview(cls, settingsWidget, previewWidget):
|
def preview(cls, settingsWidget, previewWidget):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def shortcodes(cls):
|
||||||
|
return [
|
||||||
|
("\n", "\\n")
|
||||||
|
]
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def escapes(cls, text):
|
||||||
|
for A, B in cls.shortcodes():
|
||||||
|
text = text.replace(A, B)
|
||||||
|
return text
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def descapes(cls, text):
|
||||||
|
"""How do we call that?"""
|
||||||
|
for A, B in cls.shortcodes():
|
||||||
|
text = text.replace(B, A)
|
||||||
|
return text
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# --!-- coding: utf8 --!--
|
# --!-- coding: utf8 --!--
|
||||||
|
import re
|
||||||
|
from PyQt5.QtGui import QFont, QTextCharFormat
|
||||||
from PyQt5.QtWidgets import QPlainTextEdit
|
from PyQt5.QtWidgets import QPlainTextEdit
|
||||||
|
|
||||||
from manuskript.exporter.basic import basicExporter, basicFormat
|
from manuskript.exporter.basic import basicFormat
|
||||||
from manuskript.functions import mainWindow
|
from manuskript.functions import mainWindow
|
||||||
from manuskript.models.outlineModel import outlineItem
|
from manuskript.models.outlineModel import outlineItem
|
||||||
from manuskript.ui.exporters.exporterSettings import exporterSettings
|
from manuskript.ui.exporters.manuskript.plainTextSettings import exporterSettings
|
||||||
|
|
||||||
|
|
||||||
class plainText(basicFormat):
|
class plainText(basicFormat):
|
||||||
|
@ -20,7 +22,7 @@ class plainText(basicFormat):
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def settingsWidget(cls):
|
def settingsWidget(cls):
|
||||||
w = exporterSettings()
|
w = exporterSettings(cls)
|
||||||
return w
|
return w
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -31,27 +33,50 @@ class plainText(basicFormat):
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def preview(cls, settingsWidget, previewWidget):
|
def preview(cls, settingsWidget, previewWidget):
|
||||||
previewWidget.setPlainText(cls.concatenate(mainWindow().mdlOutline.rootItem))
|
settings = settingsWidget.getSettings()
|
||||||
|
print(settings)
|
||||||
|
|
||||||
|
r = cls.concatenate(mainWindow().mdlOutline.rootItem, settings)
|
||||||
|
|
||||||
|
# Set preview font
|
||||||
|
cf = QTextCharFormat()
|
||||||
|
f = QFont()
|
||||||
|
f.fromString(settings["Preview"]["PreviewFont"])
|
||||||
|
cf.setFont(f)
|
||||||
|
previewWidget.setCurrentCharFormat(cf)
|
||||||
|
|
||||||
|
previewWidget.setPlainText(r)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def concatenate(cls, item: outlineItem,
|
def concatenate(cls, item: outlineItem, settings,
|
||||||
processTitle=lambda x: x + "\n",
|
processTitle=lambda x: x + "\n") -> str:
|
||||||
processText=lambda x: x + "\n",
|
s = settings
|
||||||
processContent=lambda x: x + "\n",
|
|
||||||
textSep="", folderSep="", textFolderSep="", folderTextSep="") -> str:
|
|
||||||
|
|
||||||
r = ""
|
r = ""
|
||||||
|
|
||||||
if not item.compile():
|
# Do we include item
|
||||||
|
if not item.compile() or s["Content"]["IgnoreCompile"]:
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
if item.level() >= 0: # item is not root
|
# What do we include
|
||||||
|
l = item.level()
|
||||||
|
if l >= 0: # item is not root
|
||||||
|
|
||||||
# Adds item title
|
if item.isFolder():
|
||||||
r += processTitle(item.title())
|
if not s["Content"]["More"] and s["Content"]["FolderTitle"] or\
|
||||||
|
s["Content"]["More"] and s["Content"]["FolderTitle"][l]:
|
||||||
|
|
||||||
# Adds item text
|
r += processTitle(item.title())
|
||||||
r += processText(item.text())
|
|
||||||
|
elif item.isText():
|
||||||
|
if not s["Content"]["More"] and s["Content"]["TextTitle"] or \
|
||||||
|
s["Content"]["More"] and s["Content"]["TextTitle"][l]:
|
||||||
|
|
||||||
|
r += processTitle(item.title())
|
||||||
|
|
||||||
|
if not s["Content"]["More"] and s["Content"]["TextText"] or \
|
||||||
|
s["Content"]["More"] and s["Content"]["TextText"][l]:
|
||||||
|
|
||||||
|
r += cls.processText(item.text(), settings)
|
||||||
|
|
||||||
content = ""
|
content = ""
|
||||||
|
|
||||||
|
@ -63,18 +88,61 @@ class plainText(basicFormat):
|
||||||
if last:
|
if last:
|
||||||
# Between folder
|
# Between folder
|
||||||
if last == c.type() == "folder":
|
if last == c.type() == "folder":
|
||||||
content += folderSep
|
content += s["Separator"]["FF"]
|
||||||
elif last == c.type() == "md":
|
|
||||||
content += textSep
|
|
||||||
elif last == "folder" and c.type() == "md":
|
|
||||||
content += folderTextSep
|
|
||||||
elif last == "md" and c.type() == "folder":
|
|
||||||
content += textFolderSep
|
|
||||||
|
|
||||||
content += cls.concatenate(c)
|
elif last == c.type() == "md":
|
||||||
|
content += s["Separator"]["TT"]
|
||||||
|
|
||||||
|
elif last == "folder" and c.type() == "md":
|
||||||
|
content += s["Separator"]["FT"]
|
||||||
|
|
||||||
|
elif last == "md" and c.type() == "folder":
|
||||||
|
content += s["Separator"]["TF"]
|
||||||
|
|
||||||
|
content += cls.concatenate(c, settings, processTitle)
|
||||||
|
|
||||||
last = c.type()
|
last = c.type()
|
||||||
|
|
||||||
r += processContent(content)
|
# r += cls.processContent(content, settings)
|
||||||
|
r += content
|
||||||
|
|
||||||
|
return r
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def processText(cls, content, settings):
|
||||||
|
s = settings["Transform"]
|
||||||
|
|
||||||
|
if s["Dash"]:
|
||||||
|
content = content.replace("---", "—")
|
||||||
|
|
||||||
|
if s["Ellipse"]:
|
||||||
|
content = content.replace("...", "…")
|
||||||
|
|
||||||
|
if s["Spaces"]:
|
||||||
|
o = ""
|
||||||
|
while o != content:
|
||||||
|
o = content
|
||||||
|
content = content.replace(" ", " ")
|
||||||
|
|
||||||
|
if s["DoubleQuotes"]:
|
||||||
|
q = s["DoubleQuotes"].split("___")
|
||||||
|
s["Custom"].append([True, '"(.*?)"', "{}\\1{}".format(q[0], q[1]), True])
|
||||||
|
|
||||||
|
if s["SingleQuote"]:
|
||||||
|
q = s["SingleQuote"].split("___")
|
||||||
|
s["Custom"].append([True, "'(.*?)'", "{}\\1{}".format(q[0], q[1]), True])
|
||||||
|
|
||||||
|
for enabled, A, B, reg in s["Custom"]:
|
||||||
|
if not enabled:
|
||||||
|
continue
|
||||||
|
|
||||||
|
if not reg:
|
||||||
|
content = content.replace(A, B)
|
||||||
|
|
||||||
|
else:
|
||||||
|
content = re.sub(A, B, content)
|
||||||
|
|
||||||
|
content += "\n"
|
||||||
|
|
||||||
|
return content
|
||||||
|
|
||||||
return r
|
|
0
manuskript/ui/exporters/__init__.py
Normal file
0
manuskript/ui/exporters/__init__.py
Normal file
|
@ -1,14 +1,14 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# --!-- coding: utf8 --!--
|
# --!-- coding: utf8 --!--
|
||||||
|
import json
|
||||||
import os
|
import os
|
||||||
from collections import OrderedDict
|
|
||||||
|
|
||||||
from PyQt5.QtCore import Qt
|
from PyQt5.QtCore import Qt
|
||||||
from PyQt5.QtGui import QBrush, QColor
|
from PyQt5.QtGui import QBrush, QColor
|
||||||
from PyQt5.QtWidgets import QWidget, QVBoxLayout
|
from PyQt5.QtWidgets import QWidget
|
||||||
|
|
||||||
from manuskript import exporter
|
from manuskript import exporter
|
||||||
from manuskript.functions import lightBlue, printObjects
|
from manuskript.functions import lightBlue, writablePath
|
||||||
from manuskript.ui.exporters.exporter_ui import Ui_exporter
|
from manuskript.ui.exporters.exporter_ui import Ui_exporter
|
||||||
from manuskript.ui.exporters.exportersManager import exportersManager
|
from manuskript.ui.exporters.exportersManager import exportersManager
|
||||||
|
|
||||||
|
|
|
@ -1,211 +0,0 @@
|
||||||
#!/usr/bin/env python
|
|
||||||
# --!-- coding: utf8 --!--
|
|
||||||
from PyQt5.QtCore import Qt, QSize
|
|
||||||
from PyQt5.QtGui import QIcon, QFontMetrics
|
|
||||||
from PyQt5.QtWidgets import QWidget, QTableWidgetItem, QListWidgetItem, QTreeView
|
|
||||||
|
|
||||||
from manuskript.functions import mainWindow
|
|
||||||
from manuskript.ui.exporters.exporterSettings_ui import Ui_exporterSettings
|
|
||||||
|
|
||||||
|
|
||||||
class exporterSettings(QWidget, Ui_exporterSettings):
|
|
||||||
def __init__(self, parent=None):
|
|
||||||
QWidget.__init__(self, parent)
|
|
||||||
self.setupUi(self)
|
|
||||||
|
|
||||||
self.mw = mainWindow()
|
|
||||||
|
|
||||||
self.grpContentFilters.setCustomColors(active="lightBlue", inactive="lightgray")
|
|
||||||
|
|
||||||
self.grpContentFilters.button.setChecked(False)
|
|
||||||
|
|
||||||
#################################################################
|
|
||||||
# Content
|
|
||||||
|
|
||||||
h = self.tblContent.horizontalHeader()
|
|
||||||
h.setSectionResizeMode(h.ResizeToContents)
|
|
||||||
h.setSectionResizeMode(0, h.Stretch)
|
|
||||||
|
|
||||||
self.contentUpdateTable()
|
|
||||||
self.chkContentMore.toggled.connect(self.contentUpdateTable)
|
|
||||||
|
|
||||||
# Labels
|
|
||||||
self.lstContentLabels.clear()
|
|
||||||
h = QFontMetrics(self.font()).height()
|
|
||||||
for i in range(1, self.mw.mdlLabels.rowCount()):
|
|
||||||
item = self.mw.mdlLabels.item(i, 0)
|
|
||||||
if item:
|
|
||||||
item = QListWidgetItem(item.icon(), item.text())
|
|
||||||
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
|
||||||
item.setCheckState(Qt.Checked)
|
|
||||||
item.setSizeHint(QSize(100, h))
|
|
||||||
self.lstContentLabels.addItem(item)
|
|
||||||
|
|
||||||
self.chkContentLabels.toggled.connect(self.lstContentLabels.setVisible)
|
|
||||||
self.chkContentLabels.toggled.connect(lambda: self.listWidgetAdjustToContent(self.lstContentLabels))
|
|
||||||
self.lstContentLabels.setVisible(False)
|
|
||||||
|
|
||||||
# Status
|
|
||||||
self.lstContentStatus.clear()
|
|
||||||
h = QFontMetrics(self.font()).height()
|
|
||||||
for i in range(1, self.mw.mdlStatus.rowCount()):
|
|
||||||
item = self.mw.mdlStatus.item(i, 0)
|
|
||||||
if item:
|
|
||||||
item = QListWidgetItem(item.icon(), item.text())
|
|
||||||
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
|
||||||
item.setCheckState(Qt.Checked)
|
|
||||||
item.setSizeHint(QSize(100, h))
|
|
||||||
self.lstContentStatus.addItem(item)
|
|
||||||
|
|
||||||
self.chkContentStatus.toggled.connect(self.lstContentStatus.setVisible)
|
|
||||||
self.chkContentStatus.toggled.connect(lambda: self.listWidgetAdjustToContent(self.lstContentStatus))
|
|
||||||
self.lstContentStatus.setVisible(False)
|
|
||||||
|
|
||||||
# Root item
|
|
||||||
self.cmbContentParent.setModel(self.mw.mdlOutline)
|
|
||||||
v = QTreeView()
|
|
||||||
self.cmbContentParent.setView(v)
|
|
||||||
v.setHeaderHidden(True)
|
|
||||||
for i in range(1, self.mw.mdlOutline.columnCount()):
|
|
||||||
v.hideColumn(i)
|
|
||||||
self.chkContentParent.toggled.connect(self.cmbContentParent.setVisible)
|
|
||||||
self.cmbContentParent.hide()
|
|
||||||
|
|
||||||
#################################################################
|
|
||||||
# Separations
|
|
||||||
|
|
||||||
for cmb in [self.cmbSepFF, self.cmbSepTT, self.cmbSepFT, self.cmbSepTF]:
|
|
||||||
cmb.clear()
|
|
||||||
|
|
||||||
cmb.addItem(self.tr("Empty line"), "empty")
|
|
||||||
cmb.addItem(self.tr("Custom"), "custom")
|
|
||||||
cmb.currentIndexChanged.connect(self.sepCmbChanged)
|
|
||||||
|
|
||||||
#################################################################
|
|
||||||
# Transformations
|
|
||||||
|
|
||||||
h = self.tblReplacements.horizontalHeader()
|
|
||||||
h.setSectionResizeMode(h.ResizeToContents)
|
|
||||||
h.setSectionResizeMode(1, h.Stretch)
|
|
||||||
h.setSectionResizeMode(2, h.Stretch)
|
|
||||||
|
|
||||||
# Cf. https://en.wikipedia.org/wiki/Quotation_mark
|
|
||||||
self.cmbTransDoubleQuotes.clear()
|
|
||||||
self.cmbTransDoubleQuotes.addItems(["” “", "“ ”", "« »"])
|
|
||||||
self.cmbTransSingleQuote.clear()
|
|
||||||
self.cmbTransSingleQuote.addItems(["‘ ’", "‹ ›"])
|
|
||||||
|
|
||||||
|
|
||||||
for cmb in [self.cmbTransDoubleQuotes, self.cmbTransSingleQuote]:
|
|
||||||
cmb.addItem(self.tr("Custom"), "custom")
|
|
||||||
cmb.currentIndexChanged.connect(self.transCmbChanged)
|
|
||||||
cmb.currentIndexChanged.emit(0)
|
|
||||||
|
|
||||||
self.btnTransAdd.clicked.connect(self.transAddTableRow)
|
|
||||||
self.btnTransRemove.clicked.connect(self.transRemoveTableRow)
|
|
||||||
|
|
||||||
def sepCmbChanged(self, index):
|
|
||||||
cmb = self.sender()
|
|
||||||
map = {
|
|
||||||
self.cmbSepFF: self.txtSepFF,
|
|
||||||
self.cmbSepTT: self.txtSepTT,
|
|
||||||
self.cmbSepFT: self.txtSepFT,
|
|
||||||
self.cmbSepTF: self.txtSepTF
|
|
||||||
}
|
|
||||||
map[cmb].setEnabled(cmb.currentData() == "custom")
|
|
||||||
|
|
||||||
def transCmbChanged(self, index):
|
|
||||||
cmb = self.sender()
|
|
||||||
map = {
|
|
||||||
self.cmbTransDoubleQuotes: (self.txtTransDoubleQuotesA, self.lblTransDoubleQuotes, self.txtTransDoubleQuotesB),
|
|
||||||
self.cmbTransSingleQuote: (self.txtTransSingleQuoteA, self.lblTransSingleQuote, self.txtTransSingleQuoteB),
|
|
||||||
}
|
|
||||||
for txt in map[cmb]:
|
|
||||||
txt.setVisible(cmb.currentData() == "custom")
|
|
||||||
|
|
||||||
def contentUpdateTable(self, val=False):
|
|
||||||
|
|
||||||
def addFolderRow(text="Folder"):
|
|
||||||
self.tableWidgetAddRow(self.tblContent, [
|
|
||||||
self.tableWidgetMakeItem(text, "folder"),
|
|
||||||
self.tableWidgetMakeItem("", "", True, True),
|
|
||||||
])
|
|
||||||
|
|
||||||
def addTextRow(text="Text"):
|
|
||||||
self.tableWidgetAddRow(self.tblContent, [
|
|
||||||
self.tableWidgetMakeItem(text, "text-x-generic"),
|
|
||||||
self.tableWidgetMakeItem("", "", True, False),
|
|
||||||
self.tableWidgetMakeItem("", "", True, True),
|
|
||||||
])
|
|
||||||
|
|
||||||
# self.tblContent.clearContents()
|
|
||||||
self.tblContent.setRowCount(0)
|
|
||||||
|
|
||||||
if not val:
|
|
||||||
addFolderRow()
|
|
||||||
addTextRow()
|
|
||||||
|
|
||||||
else:
|
|
||||||
level = self.mw.mdlOutline.maxLevel()
|
|
||||||
|
|
||||||
for i in range(level):
|
|
||||||
addFolderRow("{}Level {} folder".format(" " * i, i + 1))
|
|
||||||
|
|
||||||
for i in range(level):
|
|
||||||
addTextRow("{}Level {} text".format(" " * i, i + 1))
|
|
||||||
|
|
||||||
self.tableWidgetAdjustToContent(self.tblContent)
|
|
||||||
|
|
||||||
|
|
||||||
def transAddTableRow(self):
|
|
||||||
self.tableWidgetAddRow(self.tblReplacements, [
|
|
||||||
self.tableWidgetMakeItem("", "", True, True),
|
|
||||||
self.tableWidgetMakeItem("", "", False, False),
|
|
||||||
self.tableWidgetMakeItem("", "", False, False),
|
|
||||||
self.tableWidgetMakeItem("", "", True, False),
|
|
||||||
])
|
|
||||||
|
|
||||||
def transRemoveTableRow(self):
|
|
||||||
self.tblReplacements.removeRow(self.tblReplacements.currentRow())
|
|
||||||
|
|
||||||
def tableWidgetMakeItem(self, text="", icon="", checkable=False, checked=False):
|
|
||||||
"""Creates a QTableWidgetItem with the given attributes."""
|
|
||||||
item = QTableWidgetItem(QIcon.fromTheme(icon), text)
|
|
||||||
if checkable:
|
|
||||||
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
|
||||||
item.setCheckState(Qt.Checked if checked else Qt.Unchecked)
|
|
||||||
|
|
||||||
return item
|
|
||||||
|
|
||||||
def tableWidgetAddRow(self, table, items):
|
|
||||||
"""Appends the given items (list of QTableWidgetItems) to table."""
|
|
||||||
table.setRowCount(table.rowCount() + 1)
|
|
||||||
k = 0
|
|
||||||
for i in items:
|
|
||||||
table.setItem(table.rowCount() - 1, k, i)
|
|
||||||
k += 1
|
|
||||||
|
|
||||||
def tableWidgetAdjustToContent(self, table):
|
|
||||||
"""Set sizehint of QTableWidget table so that it matches content vertically."""
|
|
||||||
|
|
||||||
h = 0
|
|
||||||
|
|
||||||
h += table.horizontalHeader().height()
|
|
||||||
|
|
||||||
for i in range(table.rowCount()):
|
|
||||||
h += table.rowHeight(i)
|
|
||||||
|
|
||||||
table.setMinimumSize(QSize(0, h + 2))
|
|
||||||
table.setMaximumSize(QSize(16777215, h + 2))
|
|
||||||
|
|
||||||
def listWidgetAdjustToContent(self, lst):
|
|
||||||
"""Adjust listWidget to content."""
|
|
||||||
h = 0
|
|
||||||
for i in range(lst.count()):
|
|
||||||
h += lst.item(i).sizeHint().height()
|
|
||||||
|
|
||||||
lst.setMinimumSize(QSize(0, h+2))
|
|
||||||
lst.setMaximumSize(QSize(16777215, h+2))
|
|
||||||
|
|
||||||
|
|
||||||
|
|
0
manuskript/ui/exporters/manuskript/__init__.py
Normal file
0
manuskript/ui/exporters/manuskript/__init__.py
Normal file
422
manuskript/ui/exporters/manuskript/plainTextSettings.py
Normal file
422
manuskript/ui/exporters/manuskript/plainTextSettings.py
Normal file
|
@ -0,0 +1,422 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
# --!-- coding: utf8 --!--
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
|
||||||
|
from PyQt5.QtCore import Qt, QSize
|
||||||
|
from PyQt5.QtGui import QIcon, QFontMetrics, QFont
|
||||||
|
from PyQt5.QtWidgets import QWidget, QTableWidgetItem, QListWidgetItem, QTreeView
|
||||||
|
|
||||||
|
from manuskript.functions import mainWindow, writablePath
|
||||||
|
from manuskript.ui.exporters.manuskript.plainTextSettings_ui import Ui_exporterSettings
|
||||||
|
|
||||||
|
|
||||||
|
class exporterSettings(QWidget, Ui_exporterSettings):
|
||||||
|
def __init__(self, _format, parent=None):
|
||||||
|
QWidget.__init__(self, parent)
|
||||||
|
self.setupUi(self)
|
||||||
|
|
||||||
|
self.mw = mainWindow()
|
||||||
|
self._format = _format
|
||||||
|
self.settings = {}
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Content
|
||||||
|
|
||||||
|
self.grpContentFilters.button.setChecked(False)
|
||||||
|
|
||||||
|
h = self.tblContent.horizontalHeader()
|
||||||
|
h.setSectionResizeMode(h.ResizeToContents)
|
||||||
|
h.setSectionResizeMode(0, h.Stretch)
|
||||||
|
|
||||||
|
self.contentUpdateTable()
|
||||||
|
self.chkContentMore.toggled.connect(self.contentTableToggle)
|
||||||
|
self.contentTableToggle(False)
|
||||||
|
|
||||||
|
# Labels
|
||||||
|
self.lstContentLabels.clear()
|
||||||
|
h = QFontMetrics(self.font()).height()
|
||||||
|
for i in range(0, self.mw.mdlLabels.rowCount()):
|
||||||
|
item = self.mw.mdlLabels.item(i, 0)
|
||||||
|
if item:
|
||||||
|
item = QListWidgetItem(item.icon(), item.text())
|
||||||
|
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
||||||
|
item.setCheckState(Qt.Checked)
|
||||||
|
item.setSizeHint(QSize(100, h))
|
||||||
|
self.lstContentLabels.addItem(item)
|
||||||
|
|
||||||
|
self.chkContentLabels.toggled.connect(self.lstContentLabels.setVisible)
|
||||||
|
self.chkContentLabels.toggled.connect(lambda: self.listWidgetAdjustToContent(self.lstContentLabels))
|
||||||
|
self.lstContentLabels.setVisible(False)
|
||||||
|
|
||||||
|
# Status
|
||||||
|
self.lstContentStatus.clear()
|
||||||
|
h = QFontMetrics(self.font()).height()
|
||||||
|
for i in range(0, self.mw.mdlStatus.rowCount()):
|
||||||
|
item = self.mw.mdlStatus.item(i, 0)
|
||||||
|
if item:
|
||||||
|
item = QListWidgetItem(item.icon(), item.text())
|
||||||
|
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
||||||
|
item.setCheckState(Qt.Checked)
|
||||||
|
item.setSizeHint(QSize(100, h))
|
||||||
|
self.lstContentStatus.addItem(item)
|
||||||
|
|
||||||
|
self.chkContentStatus.toggled.connect(self.lstContentStatus.setVisible)
|
||||||
|
self.chkContentStatus.toggled.connect(lambda: self.listWidgetAdjustToContent(self.lstContentStatus))
|
||||||
|
self.lstContentStatus.setVisible(False)
|
||||||
|
|
||||||
|
# Root item
|
||||||
|
self.cmbContentParent.setModel(self.mw.mdlOutline)
|
||||||
|
v = QTreeView()
|
||||||
|
self.cmbContentParent.setView(v)
|
||||||
|
v.setHeaderHidden(True)
|
||||||
|
for i in range(1, self.mw.mdlOutline.columnCount()):
|
||||||
|
v.hideColumn(i)
|
||||||
|
self.chkContentParent.toggled.connect(self.cmbContentParent.setVisible)
|
||||||
|
self.cmbContentParent.hide()
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Separations
|
||||||
|
|
||||||
|
for cmb in [self.cmbSepFF, self.cmbSepTT, self.cmbSepFT, self.cmbSepTF]:
|
||||||
|
cmb.clear()
|
||||||
|
|
||||||
|
cmb.addItem(self.tr("Empty line"), "empty")
|
||||||
|
cmb.addItem(self.tr("Custom"), "custom")
|
||||||
|
cmb.currentIndexChanged.connect(self.sepCmbChanged)
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Transformations
|
||||||
|
|
||||||
|
h = self.tblReplacements.horizontalHeader()
|
||||||
|
h.setSectionResizeMode(h.ResizeToContents)
|
||||||
|
h.setSectionResizeMode(1, h.Stretch)
|
||||||
|
h.setSectionResizeMode(2, h.Stretch)
|
||||||
|
|
||||||
|
# Cf. https://en.wikipedia.org/wiki/Quotation_mark
|
||||||
|
self.cmbTransDoubleQuotes.clear()
|
||||||
|
self.cmbTransDoubleQuotes.addItems(["”___“", "“___”", "«___»"])
|
||||||
|
self.cmbTransSingleQuote.clear()
|
||||||
|
self.cmbTransSingleQuote.addItems(["‘___’", "‹___›"])
|
||||||
|
|
||||||
|
for cmb in [self.cmbTransDoubleQuotes, self.cmbTransSingleQuote]:
|
||||||
|
cmb.addItem(self.tr("Custom"), "custom")
|
||||||
|
cmb.currentIndexChanged.connect(self.transCmbChanged)
|
||||||
|
cmb.currentIndexChanged.emit(0)
|
||||||
|
|
||||||
|
self.btnTransAdd.clicked.connect(self.transAddTableRow)
|
||||||
|
self.btnTransRemove.clicked.connect(self.transRemoveTableRow)
|
||||||
|
self.tableWidgetAdjustToContent(self.tblReplacements)
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Preview
|
||||||
|
|
||||||
|
self.cmbPreviewFont.setCurrentFont(self.font())
|
||||||
|
self.spnPreviewSize.setValue(self.font().pointSize())
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Final stuff
|
||||||
|
|
||||||
|
self.toolBox.setCurrentIndex(0)
|
||||||
|
self.loadSettings()
|
||||||
|
|
||||||
|
###################################################################################################################
|
||||||
|
# SETTINGS
|
||||||
|
###################################################################################################################
|
||||||
|
|
||||||
|
def loadSettings(self):
|
||||||
|
filename = self.getSettingsPath()
|
||||||
|
print(filename)
|
||||||
|
if os.path.exists(filename):
|
||||||
|
with open(filename) as f:
|
||||||
|
self.settings = json.load(f)
|
||||||
|
self.updateFromSettings()
|
||||||
|
|
||||||
|
# Default values
|
||||||
|
else:
|
||||||
|
self.getSettings()
|
||||||
|
|
||||||
|
def writeSettings(self):
|
||||||
|
with open(self.getSettingsPath(), 'w') as f:
|
||||||
|
# json.dumps(json.loads(json.dumps(allSettings)), indent=4, sort_keys=True)
|
||||||
|
json.dump(self.settings, f, indent=4, sort_keys=True)
|
||||||
|
|
||||||
|
def getSettingsPath(self):
|
||||||
|
return os.path.join(writablePath(), "exporter.ini")
|
||||||
|
|
||||||
|
def updateFromSettings(self):
|
||||||
|
settings = self.settings
|
||||||
|
|
||||||
|
# Content
|
||||||
|
s = settings["Content"]
|
||||||
|
self.chkContentMore.setChecked(s["More"])
|
||||||
|
|
||||||
|
if not s["More"]:
|
||||||
|
self.tblContent.item(0, 1).setCheckState(Qt.Checked if s["FolderTitle"] else Qt.Unchecked)
|
||||||
|
self.tblContent.item(1, 1).setCheckState(Qt.Checked if s["TextTitle"] else Qt.Unchecked)
|
||||||
|
self.tblContent.item(1, 2).setCheckState(Qt.Checked if s["TextText"] else Qt.Unchecked)
|
||||||
|
|
||||||
|
else:
|
||||||
|
nLevel = len(s["FolderTitle"])
|
||||||
|
for i in range(nLevel):
|
||||||
|
self.tblContent.item(i + 2, 1).setCheckState(Qt.Checked if s["FolderTitle"][i] else Qt.Unchecked)
|
||||||
|
self.tblContent.item(i + 2 + nLevel, 1).setCheckState(Qt.Checked if s["TextTitle"][i] else Qt.Unchecked)
|
||||||
|
self.tblContent.item(i + 2 + nLevel, 2).setCheckState(Qt.Checked if s["TextText"][i] else Qt.Unchecked)
|
||||||
|
|
||||||
|
self.chkContentIgnoreCompile.setChecked(s["IgnoreCompile"])
|
||||||
|
self.chkContentParent.setChecked(s["Parent"])
|
||||||
|
self.chkContentLabels.setChecked(s["Labels"])
|
||||||
|
self.chkContentStatus.setChecked(s["Status"])
|
||||||
|
# FIXME: parent, labels, status
|
||||||
|
|
||||||
|
# Separations
|
||||||
|
s = settings["Separator"]
|
||||||
|
for val, cmb, txt in [
|
||||||
|
("FF", self.cmbSepFF, self.txtSepFF),
|
||||||
|
("TT", self.cmbSepTT, self.txtSepTT),
|
||||||
|
("FT", self.cmbSepFT, self.txtSepFT),
|
||||||
|
("TF", self.cmbSepTF, self.txtSepTF),
|
||||||
|
]:
|
||||||
|
if s[val] == "\n":
|
||||||
|
cmb.setCurrentIndex(0)
|
||||||
|
else:
|
||||||
|
cmb.setCurrentIndex(1)
|
||||||
|
txt.setText(self._format.escapes(s[val]))
|
||||||
|
|
||||||
|
# Transformations
|
||||||
|
s = settings["Transform"]
|
||||||
|
self.chkTransEllipse.setChecked(s["Ellipse"])
|
||||||
|
self.chkTransDash.setChecked(s["Dash"])
|
||||||
|
|
||||||
|
for val, chk, cmb, txtA, txtB in [
|
||||||
|
("DoubleQuotes", self.chkTransDoubleQuotes, self.cmbTransDoubleQuotes, self.txtTransDoubleQuotesA, self.txtTransDoubleQuotesB),
|
||||||
|
("SingleQuote", self.chkTransSingleQuote, self.cmbTransSingleQuote, self.txtTransSingleQuoteA, self.txtTransSingleQuoteB),
|
||||||
|
]:
|
||||||
|
chk.setChecked(s[val] != False)
|
||||||
|
if s[val]:
|
||||||
|
if cmb.findText(s[val]) != -1:
|
||||||
|
cmb.setCurrentText(s[val])
|
||||||
|
else:
|
||||||
|
cmb.setCurrentIndex(cmb.count() - 1)
|
||||||
|
txtA.setText(s[val].split("___")[0])
|
||||||
|
txtB.setText(s[val].split("___")[1])
|
||||||
|
|
||||||
|
self.chkTransSpaces.setChecked(s["Spaces"])
|
||||||
|
|
||||||
|
for i in s["Custom"]:
|
||||||
|
self.transAddTableRow(i[0], i[1], i[2], i[3])
|
||||||
|
|
||||||
|
# Preview
|
||||||
|
s = settings["Preview"]
|
||||||
|
f = QFont()
|
||||||
|
f.fromString(s["PreviewFont"])
|
||||||
|
self.cmbPreviewFont.setCurrentFont(f)
|
||||||
|
self.spnPreviewSize.setValue(f.pointSize())
|
||||||
|
|
||||||
|
def getSettings(self):
|
||||||
|
"""Updates settings from ui, and return."""
|
||||||
|
# Content
|
||||||
|
s = self.settings.get("Content", {})
|
||||||
|
s["More"] = self.chkContentMore.isChecked()
|
||||||
|
|
||||||
|
if not s["More"]:
|
||||||
|
s["FolderTitle"] = self.tblContent.item(0, 1).checkState() == Qt.Checked
|
||||||
|
s["TextTitle"] = self.tblContent.item(1, 1).checkState() == Qt.Checked
|
||||||
|
s["TextText"] = self.tblContent.item(1, 2).checkState() == Qt.Checked
|
||||||
|
|
||||||
|
else:
|
||||||
|
s["FolderTitle"] = []
|
||||||
|
s["TextTitle"] = []
|
||||||
|
s["TextText"] = []
|
||||||
|
nLevel = int((self.tblContent.rowCount() - 2) / 2)
|
||||||
|
print(nLevel)
|
||||||
|
for row in range(nLevel):
|
||||||
|
s["FolderTitle"].append(self.tblContent.item(2 + row, 1).checkState() == Qt.Checked)
|
||||||
|
s["TextTitle"].append(self.tblContent.item(2 + row + nLevel, 1).checkState() == Qt.Checked)
|
||||||
|
s["TextText"].append(self.tblContent.item(2 + row + nLevel, 2).checkState() == Qt.Checked)
|
||||||
|
|
||||||
|
s["IgnoreCompile"] = self.chkContentIgnoreCompile.isChecked()
|
||||||
|
s["Parent"] = self.chkContentParent.isChecked()
|
||||||
|
s["Labels"] = self.chkContentLabels.isChecked()
|
||||||
|
s["Status"] = self.chkContentStatus.isChecked()
|
||||||
|
self.settings["Content"] = s
|
||||||
|
# FIXME: parent, labels, status
|
||||||
|
|
||||||
|
# Separations
|
||||||
|
s = self.settings.get("Separator", {})
|
||||||
|
for val, cmb, txt in [
|
||||||
|
("FF", self.cmbSepFF, self.txtSepFF),
|
||||||
|
("TT", self.cmbSepTT, self.txtSepTT),
|
||||||
|
("FT", self.cmbSepFT, self.txtSepFT),
|
||||||
|
("TF", self.cmbSepTF, self.txtSepTF),
|
||||||
|
]:
|
||||||
|
if cmb.currentIndex() == 0:
|
||||||
|
s[val] = "\n"
|
||||||
|
|
||||||
|
else:
|
||||||
|
s[val] = self._format.descapes(txt.text())
|
||||||
|
self.settings["Separator"] = s
|
||||||
|
|
||||||
|
# Transformations
|
||||||
|
s = self.settings.get("Transform", {})
|
||||||
|
s["Ellipse"] = self.chkTransEllipse.isChecked()
|
||||||
|
s["Dash"] = self.chkTransDash.isChecked()
|
||||||
|
|
||||||
|
for val, chk, cmb, txtA, txtB in [
|
||||||
|
("DoubleQuotes", self.chkTransDoubleQuotes, self.cmbTransDoubleQuotes, self.txtTransDoubleQuotesA, self.txtTransDoubleQuotesB),
|
||||||
|
("SingleQuote", self.chkTransSingleQuote, self.cmbTransSingleQuote, self.txtTransSingleQuoteA, self.txtTransSingleQuoteB),
|
||||||
|
]:
|
||||||
|
if not chk.isChecked():
|
||||||
|
s[val] = False
|
||||||
|
else:
|
||||||
|
if cmb.currentData() == "custom":
|
||||||
|
s[val] = txtA.text() + "___" + txtB.text()
|
||||||
|
else:
|
||||||
|
s[val] = cmb.currentText()
|
||||||
|
|
||||||
|
s["Spaces"] = self.chkTransSpaces.isChecked()
|
||||||
|
|
||||||
|
s["Custom"] = []
|
||||||
|
for i in range(self.tblReplacements.rowCount()):
|
||||||
|
print(self.getTableRowValues(self.tblReplacements, i))
|
||||||
|
s["Custom"].append(self.getTableRowValues(self.tblReplacements, i))
|
||||||
|
self.settings["Transform"] = s
|
||||||
|
|
||||||
|
# Preview
|
||||||
|
s = self.settings.get("Preview", {})
|
||||||
|
f = self.cmbPreviewFont.currentFont()
|
||||||
|
f.setPointSize(self.spnPreviewSize.value())
|
||||||
|
s["PreviewFont"] = f.toString()
|
||||||
|
self.settings["Preview"] = s
|
||||||
|
|
||||||
|
# Save settings
|
||||||
|
self.writeSettings()
|
||||||
|
|
||||||
|
return self.settings
|
||||||
|
|
||||||
|
def sepCmbChanged(self, index):
|
||||||
|
cmb = self.sender()
|
||||||
|
map = {
|
||||||
|
self.cmbSepFF: self.txtSepFF,
|
||||||
|
self.cmbSepTT: self.txtSepTT,
|
||||||
|
self.cmbSepFT: self.txtSepFT,
|
||||||
|
self.cmbSepTF: self.txtSepTF
|
||||||
|
}
|
||||||
|
map[cmb].setEnabled(cmb.currentData() == "custom")
|
||||||
|
|
||||||
|
def transCmbChanged(self, index):
|
||||||
|
cmb = self.sender()
|
||||||
|
map = {
|
||||||
|
self.cmbTransDoubleQuotes: (self.txtTransDoubleQuotesA, self.lblTransDoubleQuotes, self.txtTransDoubleQuotesB),
|
||||||
|
self.cmbTransSingleQuote: (self.txtTransSingleQuoteA, self.lblTransSingleQuote, self.txtTransSingleQuoteB),
|
||||||
|
}
|
||||||
|
for txt in map[cmb]:
|
||||||
|
txt.setVisible(cmb.currentData() == "custom")
|
||||||
|
|
||||||
|
def contentUpdateTable(self):
|
||||||
|
|
||||||
|
def addFolderRow(text="Folder"):
|
||||||
|
self.tableWidgetAddRow(self.tblContent, [
|
||||||
|
self.tableWidgetMakeItem(text, "folder"),
|
||||||
|
self.tableWidgetMakeItem("", "", True, True),
|
||||||
|
])
|
||||||
|
|
||||||
|
def addTextRow(text="Text"):
|
||||||
|
self.tableWidgetAddRow(self.tblContent, [
|
||||||
|
self.tableWidgetMakeItem(text, "text-x-generic"),
|
||||||
|
self.tableWidgetMakeItem("", "", True, False),
|
||||||
|
self.tableWidgetMakeItem("", "", True, True),
|
||||||
|
])
|
||||||
|
|
||||||
|
self.tblContent.setRowCount(0)
|
||||||
|
|
||||||
|
# Basic
|
||||||
|
addFolderRow()
|
||||||
|
addTextRow()
|
||||||
|
|
||||||
|
# Detailed
|
||||||
|
level = self.mw.mdlOutline.maxLevel()
|
||||||
|
|
||||||
|
for i in range(level):
|
||||||
|
addFolderRow("{}Level {} folder".format(" " * i, i + 1))
|
||||||
|
|
||||||
|
for i in range(level):
|
||||||
|
addTextRow("{}Level {} text".format(" " * i, i + 1))
|
||||||
|
|
||||||
|
self.tableWidgetAdjustToContent(self.tblContent)
|
||||||
|
|
||||||
|
def contentTableToggle(self, detailed):
|
||||||
|
for i in range(self.tblContent.rowCount()):
|
||||||
|
self.tblContent.setRowHidden(i, i in [0, 1] and detailed or (not i in [0, 1] and not detailed))
|
||||||
|
self.tableWidgetAdjustToContent(self.tblContent)
|
||||||
|
|
||||||
|
def getTableRowValues(self, table, row):
|
||||||
|
r = []
|
||||||
|
for col in range(table.columnCount()):
|
||||||
|
item = table.item(row, col)
|
||||||
|
|
||||||
|
if not item:
|
||||||
|
r.append(None)
|
||||||
|
elif item.flags() & Qt.ItemIsUserCheckable == Qt.ItemIsUserCheckable:
|
||||||
|
r.append(item.checkState() == Qt.Checked)
|
||||||
|
else:
|
||||||
|
r.append(item.text())
|
||||||
|
|
||||||
|
return r
|
||||||
|
|
||||||
|
def transAddTableRow(self, checked=True, A="", B="", regexp=False):
|
||||||
|
self.tableWidgetAddRow(self.tblReplacements, [
|
||||||
|
self.tableWidgetMakeItem("", "", True, checked),
|
||||||
|
self.tableWidgetMakeItem(A, "", False, False),
|
||||||
|
self.tableWidgetMakeItem(B, "", False, False),
|
||||||
|
self.tableWidgetMakeItem("", "", True, regexp),
|
||||||
|
])
|
||||||
|
self.tableWidgetAdjustToContent(self.tblReplacements)
|
||||||
|
|
||||||
|
def transRemoveTableRow(self):
|
||||||
|
self.tblReplacements.removeRow(self.tblReplacements.currentRow())
|
||||||
|
self.tableWidgetAdjustToContent(self.tblReplacements)
|
||||||
|
|
||||||
|
def tableWidgetMakeItem(self, text="", icon="", checkable=False, checked=False):
|
||||||
|
"""Creates a QTableWidgetItem with the given attributes."""
|
||||||
|
item = QTableWidgetItem(QIcon.fromTheme(icon), text)
|
||||||
|
if checkable:
|
||||||
|
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
|
||||||
|
item.setCheckState(Qt.Checked if checked else Qt.Unchecked)
|
||||||
|
else:
|
||||||
|
item.setFlags(item.flags() & ~Qt.ItemIsUserCheckable)
|
||||||
|
|
||||||
|
return item
|
||||||
|
|
||||||
|
def tableWidgetAddRow(self, table, items):
|
||||||
|
"""Appends the given items (list of QTableWidgetItems) to table."""
|
||||||
|
table.setRowCount(table.rowCount() + 1)
|
||||||
|
k = 0
|
||||||
|
for i in items:
|
||||||
|
table.setItem(table.rowCount() - 1, k, i)
|
||||||
|
k += 1
|
||||||
|
|
||||||
|
def tableWidgetAdjustToContent(self, table):
|
||||||
|
"""Set sizehint of QTableWidget table so that it matches content vertically."""
|
||||||
|
|
||||||
|
h = 0
|
||||||
|
|
||||||
|
h += table.horizontalHeader().height()
|
||||||
|
|
||||||
|
for i in range(table.rowCount()):
|
||||||
|
h += table.rowHeight(i)
|
||||||
|
|
||||||
|
table.setMinimumSize(QSize(0, h + 2))
|
||||||
|
table.setMaximumSize(QSize(16777215, h + 2))
|
||||||
|
|
||||||
|
def listWidgetAdjustToContent(self, lst):
|
||||||
|
"""Adjust listWidget to content."""
|
||||||
|
h = 0
|
||||||
|
for i in range(lst.count()):
|
||||||
|
h += lst.item(i).sizeHint().height()
|
||||||
|
|
||||||
|
lst.setMinimumSize(QSize(0, h+2))
|
||||||
|
lst.setMaximumSize(QSize(16777215, h+2))
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
# Form implementation generated from reading ui file 'manuskript/ui/exporters/exporterSettings_ui.ui'
|
# Form implementation generated from reading ui file 'manuskript/ui/exporters/manuskript/plainTextSettings_ui.ui'
|
||||||
#
|
#
|
||||||
# Created by: PyQt5 UI code generator 5.4.2
|
# Created by: PyQt5 UI code generator 5.4.2
|
||||||
#
|
#
|
||||||
|
@ -27,15 +27,15 @@ class Ui_exporterSettings(object):
|
||||||
" background-color:skyblue;\n"
|
" background-color:skyblue;\n"
|
||||||
"}")
|
"}")
|
||||||
self.toolBox.setObjectName("toolBox")
|
self.toolBox.setObjectName("toolBox")
|
||||||
self.page = QtWidgets.QWidget()
|
self.content = QtWidgets.QWidget()
|
||||||
self.page.setGeometry(QtCore.QRect(0, 0, 491, 824))
|
self.content.setGeometry(QtCore.QRect(0, 0, 491, 842))
|
||||||
self.page.setObjectName("page")
|
self.content.setObjectName("content")
|
||||||
self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.page)
|
self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.content)
|
||||||
self.verticalLayout_5.setObjectName("verticalLayout_5")
|
self.verticalLayout_5.setObjectName("verticalLayout_5")
|
||||||
self.label = QtWidgets.QLabel(self.page)
|
self.label = QtWidgets.QLabel(self.content)
|
||||||
self.label.setObjectName("label")
|
self.label.setObjectName("label")
|
||||||
self.verticalLayout_5.addWidget(self.label)
|
self.verticalLayout_5.addWidget(self.label)
|
||||||
self.tblContent = QtWidgets.QTableWidget(self.page)
|
self.tblContent = QtWidgets.QTableWidget(self.content)
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
@ -60,11 +60,11 @@ class Ui_exporterSettings(object):
|
||||||
self.horizontalLayout_8.setObjectName("horizontalLayout_8")
|
self.horizontalLayout_8.setObjectName("horizontalLayout_8")
|
||||||
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||||
self.horizontalLayout_8.addItem(spacerItem)
|
self.horizontalLayout_8.addItem(spacerItem)
|
||||||
self.chkContentMore = QtWidgets.QCheckBox(self.page)
|
self.chkContentMore = QtWidgets.QCheckBox(self.content)
|
||||||
self.chkContentMore.setObjectName("chkContentMore")
|
self.chkContentMore.setObjectName("chkContentMore")
|
||||||
self.horizontalLayout_8.addWidget(self.chkContentMore)
|
self.horizontalLayout_8.addWidget(self.chkContentMore)
|
||||||
self.verticalLayout_5.addLayout(self.horizontalLayout_8)
|
self.verticalLayout_5.addLayout(self.horizontalLayout_8)
|
||||||
self.grpContentFilters = collapsibleGroupBox2(self.page)
|
self.grpContentFilters = collapsibleGroupBox2(self.content)
|
||||||
self.grpContentFilters.setCheckable(True)
|
self.grpContentFilters.setCheckable(True)
|
||||||
self.grpContentFilters.setObjectName("grpContentFilters")
|
self.grpContentFilters.setObjectName("grpContentFilters")
|
||||||
self.formLayout_2 = QtWidgets.QFormLayout(self.grpContentFilters)
|
self.formLayout_2 = QtWidgets.QFormLayout(self.grpContentFilters)
|
||||||
|
@ -83,7 +83,6 @@ class Ui_exporterSettings(object):
|
||||||
self.cmbContentParent = QtWidgets.QComboBox(self.grpContentFilters)
|
self.cmbContentParent = QtWidgets.QComboBox(self.grpContentFilters)
|
||||||
self.cmbContentParent.setFrame(False)
|
self.cmbContentParent.setFrame(False)
|
||||||
self.cmbContentParent.setObjectName("cmbContentParent")
|
self.cmbContentParent.setObjectName("cmbContentParent")
|
||||||
self.cmbContentParent.addItem("")
|
|
||||||
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.cmbContentParent)
|
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.cmbContentParent)
|
||||||
self.chkContentLabels = QtWidgets.QCheckBox(self.grpContentFilters)
|
self.chkContentLabels = QtWidgets.QCheckBox(self.grpContentFilters)
|
||||||
self.chkContentLabels.setObjectName("chkContentLabels")
|
self.chkContentLabels.setObjectName("chkContentLabels")
|
||||||
|
@ -110,12 +109,13 @@ class Ui_exporterSettings(object):
|
||||||
self.verticalLayout_5.addWidget(self.grpContentFilters)
|
self.verticalLayout_5.addWidget(self.grpContentFilters)
|
||||||
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
self.verticalLayout_5.addItem(spacerItem1)
|
self.verticalLayout_5.addItem(spacerItem1)
|
||||||
self.toolBox.addItem(self.page, "")
|
self.toolBox.addItem(self.content, "")
|
||||||
self.page_3 = QtWidgets.QWidget()
|
self.separations = QtWidgets.QWidget()
|
||||||
self.page_3.setObjectName("page_3")
|
self.separations.setGeometry(QtCore.QRect(0, 0, 511, 522))
|
||||||
self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.page_3)
|
self.separations.setObjectName("separations")
|
||||||
|
self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.separations)
|
||||||
self.verticalLayout_8.setObjectName("verticalLayout_8")
|
self.verticalLayout_8.setObjectName("verticalLayout_8")
|
||||||
self.label_3 = QtWidgets.QLabel(self.page_3)
|
self.label_3 = QtWidgets.QLabel(self.separations)
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
font.setWeight(75)
|
font.setWeight(75)
|
||||||
|
@ -128,7 +128,7 @@ class Ui_exporterSettings(object):
|
||||||
self.horizontalLayout.addItem(spacerItem2)
|
self.horizontalLayout.addItem(spacerItem2)
|
||||||
self.verticalLayout = QtWidgets.QVBoxLayout()
|
self.verticalLayout = QtWidgets.QVBoxLayout()
|
||||||
self.verticalLayout.setObjectName("verticalLayout")
|
self.verticalLayout.setObjectName("verticalLayout")
|
||||||
self.pushButton_4 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_4 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_4.setEnabled(True)
|
self.pushButton_4.setEnabled(True)
|
||||||
self.pushButton_4.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_4.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_4.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_4.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -138,12 +138,12 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_4.setFlat(True)
|
self.pushButton_4.setFlat(True)
|
||||||
self.pushButton_4.setObjectName("pushButton_4")
|
self.pushButton_4.setObjectName("pushButton_4")
|
||||||
self.verticalLayout.addWidget(self.pushButton_4)
|
self.verticalLayout.addWidget(self.pushButton_4)
|
||||||
self.line = QtWidgets.QFrame(self.page_3)
|
self.line = QtWidgets.QFrame(self.separations)
|
||||||
self.line.setFrameShape(QtWidgets.QFrame.HLine)
|
self.line.setFrameShape(QtWidgets.QFrame.HLine)
|
||||||
self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
|
self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
|
||||||
self.line.setObjectName("line")
|
self.line.setObjectName("line")
|
||||||
self.verticalLayout.addWidget(self.line)
|
self.verticalLayout.addWidget(self.line)
|
||||||
self.pushButton = QtWidgets.QPushButton(self.page_3)
|
self.pushButton = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton.setEnabled(True)
|
self.pushButton.setEnabled(True)
|
||||||
self.pushButton.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -154,17 +154,17 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton.setObjectName("pushButton")
|
self.pushButton.setObjectName("pushButton")
|
||||||
self.verticalLayout.addWidget(self.pushButton)
|
self.verticalLayout.addWidget(self.pushButton)
|
||||||
self.horizontalLayout.addLayout(self.verticalLayout)
|
self.horizontalLayout.addLayout(self.verticalLayout)
|
||||||
self.cmbSepFF = QtWidgets.QComboBox(self.page_3)
|
self.cmbSepFF = QtWidgets.QComboBox(self.separations)
|
||||||
self.cmbSepFF.setObjectName("cmbSepFF")
|
self.cmbSepFF.setObjectName("cmbSepFF")
|
||||||
self.cmbSepFF.addItem("")
|
self.cmbSepFF.addItem("")
|
||||||
self.cmbSepFF.addItem("")
|
self.cmbSepFF.addItem("")
|
||||||
self.horizontalLayout.addWidget(self.cmbSepFF)
|
self.horizontalLayout.addWidget(self.cmbSepFF)
|
||||||
self.txtSepFF = QtWidgets.QLineEdit(self.page_3)
|
self.txtSepFF = QtWidgets.QLineEdit(self.separations)
|
||||||
self.txtSepFF.setEnabled(False)
|
self.txtSepFF.setEnabled(False)
|
||||||
self.txtSepFF.setObjectName("txtSepFF")
|
self.txtSepFF.setObjectName("txtSepFF")
|
||||||
self.horizontalLayout.addWidget(self.txtSepFF)
|
self.horizontalLayout.addWidget(self.txtSepFF)
|
||||||
self.verticalLayout_8.addLayout(self.horizontalLayout)
|
self.verticalLayout_8.addLayout(self.horizontalLayout)
|
||||||
self.label_4 = QtWidgets.QLabel(self.page_3)
|
self.label_4 = QtWidgets.QLabel(self.separations)
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
font.setWeight(75)
|
font.setWeight(75)
|
||||||
|
@ -177,7 +177,7 @@ class Ui_exporterSettings(object):
|
||||||
self.horizontalLayout_2.addItem(spacerItem3)
|
self.horizontalLayout_2.addItem(spacerItem3)
|
||||||
self.verticalLayout_3 = QtWidgets.QVBoxLayout()
|
self.verticalLayout_3 = QtWidgets.QVBoxLayout()
|
||||||
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
||||||
self.pushButton_5 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_5 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_5.setEnabled(True)
|
self.pushButton_5.setEnabled(True)
|
||||||
self.pushButton_5.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_5.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_5.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_5.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -187,12 +187,12 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_5.setFlat(True)
|
self.pushButton_5.setFlat(True)
|
||||||
self.pushButton_5.setObjectName("pushButton_5")
|
self.pushButton_5.setObjectName("pushButton_5")
|
||||||
self.verticalLayout_3.addWidget(self.pushButton_5)
|
self.verticalLayout_3.addWidget(self.pushButton_5)
|
||||||
self.line_2 = QtWidgets.QFrame(self.page_3)
|
self.line_2 = QtWidgets.QFrame(self.separations)
|
||||||
self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
|
self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
|
||||||
self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
|
self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
|
||||||
self.line_2.setObjectName("line_2")
|
self.line_2.setObjectName("line_2")
|
||||||
self.verticalLayout_3.addWidget(self.line_2)
|
self.verticalLayout_3.addWidget(self.line_2)
|
||||||
self.pushButton_6 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_6 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_6.setEnabled(True)
|
self.pushButton_6.setEnabled(True)
|
||||||
self.pushButton_6.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_6.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_6.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_6.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -203,17 +203,17 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_6.setObjectName("pushButton_6")
|
self.pushButton_6.setObjectName("pushButton_6")
|
||||||
self.verticalLayout_3.addWidget(self.pushButton_6)
|
self.verticalLayout_3.addWidget(self.pushButton_6)
|
||||||
self.horizontalLayout_2.addLayout(self.verticalLayout_3)
|
self.horizontalLayout_2.addLayout(self.verticalLayout_3)
|
||||||
self.cmbSepTT = QtWidgets.QComboBox(self.page_3)
|
self.cmbSepTT = QtWidgets.QComboBox(self.separations)
|
||||||
self.cmbSepTT.setObjectName("cmbSepTT")
|
self.cmbSepTT.setObjectName("cmbSepTT")
|
||||||
self.cmbSepTT.addItem("")
|
self.cmbSepTT.addItem("")
|
||||||
self.cmbSepTT.addItem("")
|
self.cmbSepTT.addItem("")
|
||||||
self.horizontalLayout_2.addWidget(self.cmbSepTT)
|
self.horizontalLayout_2.addWidget(self.cmbSepTT)
|
||||||
self.txtSepTT = QtWidgets.QLineEdit(self.page_3)
|
self.txtSepTT = QtWidgets.QLineEdit(self.separations)
|
||||||
self.txtSepTT.setEnabled(False)
|
self.txtSepTT.setEnabled(False)
|
||||||
self.txtSepTT.setObjectName("txtSepTT")
|
self.txtSepTT.setObjectName("txtSepTT")
|
||||||
self.horizontalLayout_2.addWidget(self.txtSepTT)
|
self.horizontalLayout_2.addWidget(self.txtSepTT)
|
||||||
self.verticalLayout_8.addLayout(self.horizontalLayout_2)
|
self.verticalLayout_8.addLayout(self.horizontalLayout_2)
|
||||||
self.label_6 = QtWidgets.QLabel(self.page_3)
|
self.label_6 = QtWidgets.QLabel(self.separations)
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
font.setWeight(75)
|
font.setWeight(75)
|
||||||
|
@ -226,7 +226,7 @@ class Ui_exporterSettings(object):
|
||||||
self.horizontalLayout_3.addItem(spacerItem4)
|
self.horizontalLayout_3.addItem(spacerItem4)
|
||||||
self.verticalLayout_4 = QtWidgets.QVBoxLayout()
|
self.verticalLayout_4 = QtWidgets.QVBoxLayout()
|
||||||
self.verticalLayout_4.setObjectName("verticalLayout_4")
|
self.verticalLayout_4.setObjectName("verticalLayout_4")
|
||||||
self.pushButton_7 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_7 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_7.setEnabled(True)
|
self.pushButton_7.setEnabled(True)
|
||||||
self.pushButton_7.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_7.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_7.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_7.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -236,12 +236,12 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_7.setFlat(True)
|
self.pushButton_7.setFlat(True)
|
||||||
self.pushButton_7.setObjectName("pushButton_7")
|
self.pushButton_7.setObjectName("pushButton_7")
|
||||||
self.verticalLayout_4.addWidget(self.pushButton_7)
|
self.verticalLayout_4.addWidget(self.pushButton_7)
|
||||||
self.line_3 = QtWidgets.QFrame(self.page_3)
|
self.line_3 = QtWidgets.QFrame(self.separations)
|
||||||
self.line_3.setFrameShape(QtWidgets.QFrame.HLine)
|
self.line_3.setFrameShape(QtWidgets.QFrame.HLine)
|
||||||
self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
|
self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
|
||||||
self.line_3.setObjectName("line_3")
|
self.line_3.setObjectName("line_3")
|
||||||
self.verticalLayout_4.addWidget(self.line_3)
|
self.verticalLayout_4.addWidget(self.line_3)
|
||||||
self.pushButton_8 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_8 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_8.setEnabled(True)
|
self.pushButton_8.setEnabled(True)
|
||||||
self.pushButton_8.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_8.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_8.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_8.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -252,17 +252,17 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_8.setObjectName("pushButton_8")
|
self.pushButton_8.setObjectName("pushButton_8")
|
||||||
self.verticalLayout_4.addWidget(self.pushButton_8)
|
self.verticalLayout_4.addWidget(self.pushButton_8)
|
||||||
self.horizontalLayout_3.addLayout(self.verticalLayout_4)
|
self.horizontalLayout_3.addLayout(self.verticalLayout_4)
|
||||||
self.cmbSepFT = QtWidgets.QComboBox(self.page_3)
|
self.cmbSepFT = QtWidgets.QComboBox(self.separations)
|
||||||
self.cmbSepFT.setObjectName("cmbSepFT")
|
self.cmbSepFT.setObjectName("cmbSepFT")
|
||||||
self.cmbSepFT.addItem("")
|
self.cmbSepFT.addItem("")
|
||||||
self.cmbSepFT.addItem("")
|
self.cmbSepFT.addItem("")
|
||||||
self.horizontalLayout_3.addWidget(self.cmbSepFT)
|
self.horizontalLayout_3.addWidget(self.cmbSepFT)
|
||||||
self.txtSepFT = QtWidgets.QLineEdit(self.page_3)
|
self.txtSepFT = QtWidgets.QLineEdit(self.separations)
|
||||||
self.txtSepFT.setEnabled(False)
|
self.txtSepFT.setEnabled(False)
|
||||||
self.txtSepFT.setObjectName("txtSepFT")
|
self.txtSepFT.setObjectName("txtSepFT")
|
||||||
self.horizontalLayout_3.addWidget(self.txtSepFT)
|
self.horizontalLayout_3.addWidget(self.txtSepFT)
|
||||||
self.verticalLayout_8.addLayout(self.horizontalLayout_3)
|
self.verticalLayout_8.addLayout(self.horizontalLayout_3)
|
||||||
self.label_5 = QtWidgets.QLabel(self.page_3)
|
self.label_5 = QtWidgets.QLabel(self.separations)
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
font.setWeight(75)
|
font.setWeight(75)
|
||||||
|
@ -275,7 +275,7 @@ class Ui_exporterSettings(object):
|
||||||
self.horizontalLayout_4.addItem(spacerItem5)
|
self.horizontalLayout_4.addItem(spacerItem5)
|
||||||
self.verticalLayout_7 = QtWidgets.QVBoxLayout()
|
self.verticalLayout_7 = QtWidgets.QVBoxLayout()
|
||||||
self.verticalLayout_7.setObjectName("verticalLayout_7")
|
self.verticalLayout_7.setObjectName("verticalLayout_7")
|
||||||
self.pushButton_9 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_9 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_9.setEnabled(True)
|
self.pushButton_9.setEnabled(True)
|
||||||
self.pushButton_9.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_9.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_9.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_9.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -285,12 +285,12 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_9.setFlat(True)
|
self.pushButton_9.setFlat(True)
|
||||||
self.pushButton_9.setObjectName("pushButton_9")
|
self.pushButton_9.setObjectName("pushButton_9")
|
||||||
self.verticalLayout_7.addWidget(self.pushButton_9)
|
self.verticalLayout_7.addWidget(self.pushButton_9)
|
||||||
self.line_4 = QtWidgets.QFrame(self.page_3)
|
self.line_4 = QtWidgets.QFrame(self.separations)
|
||||||
self.line_4.setFrameShape(QtWidgets.QFrame.HLine)
|
self.line_4.setFrameShape(QtWidgets.QFrame.HLine)
|
||||||
self.line_4.setFrameShadow(QtWidgets.QFrame.Sunken)
|
self.line_4.setFrameShadow(QtWidgets.QFrame.Sunken)
|
||||||
self.line_4.setObjectName("line_4")
|
self.line_4.setObjectName("line_4")
|
||||||
self.verticalLayout_7.addWidget(self.line_4)
|
self.verticalLayout_7.addWidget(self.line_4)
|
||||||
self.pushButton_10 = QtWidgets.QPushButton(self.page_3)
|
self.pushButton_10 = QtWidgets.QPushButton(self.separations)
|
||||||
self.pushButton_10.setEnabled(True)
|
self.pushButton_10.setEnabled(True)
|
||||||
self.pushButton_10.setMinimumSize(QtCore.QSize(16, 16))
|
self.pushButton_10.setMinimumSize(QtCore.QSize(16, 16))
|
||||||
self.pushButton_10.setMaximumSize(QtCore.QSize(16, 16))
|
self.pushButton_10.setMaximumSize(QtCore.QSize(16, 16))
|
||||||
|
@ -301,26 +301,26 @@ class Ui_exporterSettings(object):
|
||||||
self.pushButton_10.setObjectName("pushButton_10")
|
self.pushButton_10.setObjectName("pushButton_10")
|
||||||
self.verticalLayout_7.addWidget(self.pushButton_10)
|
self.verticalLayout_7.addWidget(self.pushButton_10)
|
||||||
self.horizontalLayout_4.addLayout(self.verticalLayout_7)
|
self.horizontalLayout_4.addLayout(self.verticalLayout_7)
|
||||||
self.cmbSepTF = QtWidgets.QComboBox(self.page_3)
|
self.cmbSepTF = QtWidgets.QComboBox(self.separations)
|
||||||
self.cmbSepTF.setObjectName("cmbSepTF")
|
self.cmbSepTF.setObjectName("cmbSepTF")
|
||||||
self.cmbSepTF.addItem("")
|
self.cmbSepTF.addItem("")
|
||||||
self.cmbSepTF.addItem("")
|
self.cmbSepTF.addItem("")
|
||||||
self.horizontalLayout_4.addWidget(self.cmbSepTF)
|
self.horizontalLayout_4.addWidget(self.cmbSepTF)
|
||||||
self.txtSepTF = QtWidgets.QLineEdit(self.page_3)
|
self.txtSepTF = QtWidgets.QLineEdit(self.separations)
|
||||||
self.txtSepTF.setEnabled(False)
|
self.txtSepTF.setEnabled(False)
|
||||||
self.txtSepTF.setObjectName("txtSepTF")
|
self.txtSepTF.setObjectName("txtSepTF")
|
||||||
self.horizontalLayout_4.addWidget(self.txtSepTF)
|
self.horizontalLayout_4.addWidget(self.txtSepTF)
|
||||||
self.verticalLayout_8.addLayout(self.horizontalLayout_4)
|
self.verticalLayout_8.addLayout(self.horizontalLayout_4)
|
||||||
spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
self.verticalLayout_8.addItem(spacerItem6)
|
self.verticalLayout_8.addItem(spacerItem6)
|
||||||
self.toolBox.addItem(self.page_3, "")
|
self.toolBox.addItem(self.separations, "")
|
||||||
self.page_2 = QtWidgets.QWidget()
|
self.transformations = QtWidgets.QWidget()
|
||||||
self.page_2.setGeometry(QtCore.QRect(0, 0, 511, 548))
|
self.transformations.setGeometry(QtCore.QRect(0, 0, 511, 522))
|
||||||
self.page_2.setStyleSheet("QGroupBox{font-weight:bold;}")
|
self.transformations.setStyleSheet("QGroupBox{font-weight:bold;}")
|
||||||
self.page_2.setObjectName("page_2")
|
self.transformations.setObjectName("transformations")
|
||||||
self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_2)
|
self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.transformations)
|
||||||
self.verticalLayout_6.setObjectName("verticalLayout_6")
|
self.verticalLayout_6.setObjectName("verticalLayout_6")
|
||||||
self.grpTransTypo = collapsibleGroupBox2(self.page_2)
|
self.grpTransTypo = collapsibleGroupBox2(self.transformations)
|
||||||
self.grpTransTypo.setStyleSheet("")
|
self.grpTransTypo.setStyleSheet("")
|
||||||
self.grpTransTypo.setObjectName("grpTransTypo")
|
self.grpTransTypo.setObjectName("grpTransTypo")
|
||||||
self.formLayout = QtWidgets.QFormLayout(self.grpTransTypo)
|
self.formLayout = QtWidgets.QFormLayout(self.grpTransTypo)
|
||||||
|
@ -345,7 +345,6 @@ class Ui_exporterSettings(object):
|
||||||
self.cmbTransDoubleQuotes.setObjectName("cmbTransDoubleQuotes")
|
self.cmbTransDoubleQuotes.setObjectName("cmbTransDoubleQuotes")
|
||||||
self.horizontalLayout_5.addWidget(self.cmbTransDoubleQuotes)
|
self.horizontalLayout_5.addWidget(self.cmbTransDoubleQuotes)
|
||||||
self.txtTransDoubleQuotesA = QtWidgets.QLineEdit(self.grpTransTypo)
|
self.txtTransDoubleQuotesA = QtWidgets.QLineEdit(self.grpTransTypo)
|
||||||
self.txtTransDoubleQuotesA.setEnabled(False)
|
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
@ -355,14 +354,13 @@ class Ui_exporterSettings(object):
|
||||||
self.txtTransDoubleQuotesA.setMaximumSize(QtCore.QSize(40, 16777215))
|
self.txtTransDoubleQuotesA.setMaximumSize(QtCore.QSize(40, 16777215))
|
||||||
self.txtTransDoubleQuotesA.setStyleSheet("border-radius: 6px;")
|
self.txtTransDoubleQuotesA.setStyleSheet("border-radius: 6px;")
|
||||||
self.txtTransDoubleQuotesA.setFrame(False)
|
self.txtTransDoubleQuotesA.setFrame(False)
|
||||||
|
self.txtTransDoubleQuotesA.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.txtTransDoubleQuotesA.setObjectName("txtTransDoubleQuotesA")
|
self.txtTransDoubleQuotesA.setObjectName("txtTransDoubleQuotesA")
|
||||||
self.horizontalLayout_5.addWidget(self.txtTransDoubleQuotesA)
|
self.horizontalLayout_5.addWidget(self.txtTransDoubleQuotesA)
|
||||||
self.lblTransDoubleQuotes = QtWidgets.QLabel(self.grpTransTypo)
|
self.lblTransDoubleQuotes = QtWidgets.QLabel(self.grpTransTypo)
|
||||||
self.lblTransDoubleQuotes.setEnabled(False)
|
|
||||||
self.lblTransDoubleQuotes.setObjectName("lblTransDoubleQuotes")
|
self.lblTransDoubleQuotes.setObjectName("lblTransDoubleQuotes")
|
||||||
self.horizontalLayout_5.addWidget(self.lblTransDoubleQuotes)
|
self.horizontalLayout_5.addWidget(self.lblTransDoubleQuotes)
|
||||||
self.txtTransDoubleQuotesB = QtWidgets.QLineEdit(self.grpTransTypo)
|
self.txtTransDoubleQuotesB = QtWidgets.QLineEdit(self.grpTransTypo)
|
||||||
self.txtTransDoubleQuotesB.setEnabled(False)
|
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
@ -372,6 +370,7 @@ class Ui_exporterSettings(object):
|
||||||
self.txtTransDoubleQuotesB.setMaximumSize(QtCore.QSize(40, 16777215))
|
self.txtTransDoubleQuotesB.setMaximumSize(QtCore.QSize(40, 16777215))
|
||||||
self.txtTransDoubleQuotesB.setStyleSheet("border-radius: 6px;")
|
self.txtTransDoubleQuotesB.setStyleSheet("border-radius: 6px;")
|
||||||
self.txtTransDoubleQuotesB.setFrame(False)
|
self.txtTransDoubleQuotesB.setFrame(False)
|
||||||
|
self.txtTransDoubleQuotesB.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.txtTransDoubleQuotesB.setObjectName("txtTransDoubleQuotesB")
|
self.txtTransDoubleQuotesB.setObjectName("txtTransDoubleQuotesB")
|
||||||
self.horizontalLayout_5.addWidget(self.txtTransDoubleQuotesB)
|
self.horizontalLayout_5.addWidget(self.txtTransDoubleQuotesB)
|
||||||
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||||
|
@ -388,7 +387,6 @@ class Ui_exporterSettings(object):
|
||||||
self.cmbTransSingleQuote.setObjectName("cmbTransSingleQuote")
|
self.cmbTransSingleQuote.setObjectName("cmbTransSingleQuote")
|
||||||
self.horizontalLayout_6.addWidget(self.cmbTransSingleQuote)
|
self.horizontalLayout_6.addWidget(self.cmbTransSingleQuote)
|
||||||
self.txtTransSingleQuoteA = QtWidgets.QLineEdit(self.grpTransTypo)
|
self.txtTransSingleQuoteA = QtWidgets.QLineEdit(self.grpTransTypo)
|
||||||
self.txtTransSingleQuoteA.setEnabled(False)
|
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
@ -398,14 +396,13 @@ class Ui_exporterSettings(object):
|
||||||
self.txtTransSingleQuoteA.setMaximumSize(QtCore.QSize(40, 16777215))
|
self.txtTransSingleQuoteA.setMaximumSize(QtCore.QSize(40, 16777215))
|
||||||
self.txtTransSingleQuoteA.setStyleSheet("border-radius: 6px;")
|
self.txtTransSingleQuoteA.setStyleSheet("border-radius: 6px;")
|
||||||
self.txtTransSingleQuoteA.setFrame(False)
|
self.txtTransSingleQuoteA.setFrame(False)
|
||||||
|
self.txtTransSingleQuoteA.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.txtTransSingleQuoteA.setObjectName("txtTransSingleQuoteA")
|
self.txtTransSingleQuoteA.setObjectName("txtTransSingleQuoteA")
|
||||||
self.horizontalLayout_6.addWidget(self.txtTransSingleQuoteA)
|
self.horizontalLayout_6.addWidget(self.txtTransSingleQuoteA)
|
||||||
self.lblTransSingleQuote = QtWidgets.QLabel(self.grpTransTypo)
|
self.lblTransSingleQuote = QtWidgets.QLabel(self.grpTransTypo)
|
||||||
self.lblTransSingleQuote.setEnabled(False)
|
|
||||||
self.lblTransSingleQuote.setObjectName("lblTransSingleQuote")
|
self.lblTransSingleQuote.setObjectName("lblTransSingleQuote")
|
||||||
self.horizontalLayout_6.addWidget(self.lblTransSingleQuote)
|
self.horizontalLayout_6.addWidget(self.lblTransSingleQuote)
|
||||||
self.txtTransSingleQuoteB = QtWidgets.QLineEdit(self.grpTransTypo)
|
self.txtTransSingleQuoteB = QtWidgets.QLineEdit(self.grpTransTypo)
|
||||||
self.txtTransSingleQuoteB.setEnabled(False)
|
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
@ -415,6 +412,7 @@ class Ui_exporterSettings(object):
|
||||||
self.txtTransSingleQuoteB.setMaximumSize(QtCore.QSize(40, 16777215))
|
self.txtTransSingleQuoteB.setMaximumSize(QtCore.QSize(40, 16777215))
|
||||||
self.txtTransSingleQuoteB.setStyleSheet("border-radius: 6px;")
|
self.txtTransSingleQuoteB.setStyleSheet("border-radius: 6px;")
|
||||||
self.txtTransSingleQuoteB.setFrame(False)
|
self.txtTransSingleQuoteB.setFrame(False)
|
||||||
|
self.txtTransSingleQuoteB.setAlignment(QtCore.Qt.AlignCenter)
|
||||||
self.txtTransSingleQuoteB.setObjectName("txtTransSingleQuoteB")
|
self.txtTransSingleQuoteB.setObjectName("txtTransSingleQuoteB")
|
||||||
self.horizontalLayout_6.addWidget(self.txtTransSingleQuoteB)
|
self.horizontalLayout_6.addWidget(self.txtTransSingleQuoteB)
|
||||||
spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||||
|
@ -424,11 +422,16 @@ class Ui_exporterSettings(object):
|
||||||
self.chkTransSpaces.setObjectName("chkTransSpaces")
|
self.chkTransSpaces.setObjectName("chkTransSpaces")
|
||||||
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.chkTransSpaces)
|
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.chkTransSpaces)
|
||||||
self.verticalLayout_6.addWidget(self.grpTransTypo)
|
self.verticalLayout_6.addWidget(self.grpTransTypo)
|
||||||
self.grpTransCustom = collapsibleGroupBox2(self.page_2)
|
self.grpTransCustom = collapsibleGroupBox2(self.transformations)
|
||||||
self.grpTransCustom.setObjectName("grpTransCustom")
|
self.grpTransCustom.setObjectName("grpTransCustom")
|
||||||
self.verticalLayout_9 = QtWidgets.QVBoxLayout(self.grpTransCustom)
|
self.verticalLayout_9 = QtWidgets.QVBoxLayout(self.grpTransCustom)
|
||||||
self.verticalLayout_9.setObjectName("verticalLayout_9")
|
self.verticalLayout_9.setObjectName("verticalLayout_9")
|
||||||
self.tblReplacements = QtWidgets.QTableWidget(self.grpTransCustom)
|
self.tblReplacements = QtWidgets.QTableWidget(self.grpTransCustom)
|
||||||
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
|
||||||
|
sizePolicy.setHorizontalStretch(0)
|
||||||
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
sizePolicy.setHeightForWidth(self.tblReplacements.sizePolicy().hasHeightForWidth())
|
||||||
|
self.tblReplacements.setSizePolicy(sizePolicy)
|
||||||
self.tblReplacements.setAlternatingRowColors(True)
|
self.tblReplacements.setAlternatingRowColors(True)
|
||||||
self.tblReplacements.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
|
self.tblReplacements.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
|
||||||
self.tblReplacements.setObjectName("tblReplacements")
|
self.tblReplacements.setObjectName("tblReplacements")
|
||||||
|
@ -466,11 +469,35 @@ class Ui_exporterSettings(object):
|
||||||
self.verticalLayout_6.addWidget(self.grpTransCustom)
|
self.verticalLayout_6.addWidget(self.grpTransCustom)
|
||||||
spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
self.verticalLayout_6.addItem(spacerItem10)
|
self.verticalLayout_6.addItem(spacerItem10)
|
||||||
self.toolBox.addItem(self.page_2, "")
|
self.toolBox.addItem(self.transformations, "")
|
||||||
|
self.preview = QtWidgets.QWidget()
|
||||||
|
self.preview.setObjectName("preview")
|
||||||
|
self.verticalLayout_11 = QtWidgets.QVBoxLayout(self.preview)
|
||||||
|
self.verticalLayout_11.setObjectName("verticalLayout_11")
|
||||||
|
self.groupBox = QtWidgets.QGroupBox(self.preview)
|
||||||
|
self.groupBox.setObjectName("groupBox")
|
||||||
|
self.formLayout_3 = QtWidgets.QFormLayout(self.groupBox)
|
||||||
|
self.formLayout_3.setObjectName("formLayout_3")
|
||||||
|
self.label_7 = QtWidgets.QLabel(self.groupBox)
|
||||||
|
self.label_7.setObjectName("label_7")
|
||||||
|
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label_7)
|
||||||
|
self.cmbPreviewFont = QtWidgets.QFontComboBox(self.groupBox)
|
||||||
|
self.cmbPreviewFont.setObjectName("cmbPreviewFont")
|
||||||
|
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.cmbPreviewFont)
|
||||||
|
self.label_8 = QtWidgets.QLabel(self.groupBox)
|
||||||
|
self.label_8.setObjectName("label_8")
|
||||||
|
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_8)
|
||||||
|
self.spnPreviewSize = QtWidgets.QSpinBox(self.groupBox)
|
||||||
|
self.spnPreviewSize.setObjectName("spnPreviewSize")
|
||||||
|
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.spnPreviewSize)
|
||||||
|
self.verticalLayout_11.addWidget(self.groupBox)
|
||||||
|
spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
|
self.verticalLayout_11.addItem(spacerItem11)
|
||||||
|
self.toolBox.addItem(self.preview, "")
|
||||||
self.verticalLayout_2.addWidget(self.toolBox)
|
self.verticalLayout_2.addWidget(self.toolBox)
|
||||||
|
|
||||||
self.retranslateUi(exporterSettings)
|
self.retranslateUi(exporterSettings)
|
||||||
self.toolBox.setCurrentIndex(0)
|
self.toolBox.setCurrentIndex(3)
|
||||||
self.toolBox.layout().setSpacing(0)
|
self.toolBox.layout().setSpacing(0)
|
||||||
QtCore.QMetaObject.connectSlotsByName(exporterSettings)
|
QtCore.QMetaObject.connectSlotsByName(exporterSettings)
|
||||||
|
|
||||||
|
@ -486,13 +513,12 @@ class Ui_exporterSettings(object):
|
||||||
item.setText(_translate("exporterSettings", "Text"))
|
item.setText(_translate("exporterSettings", "Text"))
|
||||||
self.chkContentMore.setText(_translate("exporterSettings", "I need more granularity"))
|
self.chkContentMore.setText(_translate("exporterSettings", "I need more granularity"))
|
||||||
self.grpContentFilters.setTitle(_translate("exporterSettings", "Fi<ers"))
|
self.grpContentFilters.setTitle(_translate("exporterSettings", "Fi<ers"))
|
||||||
self.label_2.setText(_translate("exporterSettings", "Filters what items will be included in the final export."))
|
self.label_2.setText(_translate("exporterSettings", "<html><head/><body><p>Filters what items will be included in the final export.<br/><span style=\" color:#773333;\">(Not fully implemented yet.)</span></p></body></html>"))
|
||||||
self.chkContentIgnoreCompile.setText(_translate("exporterSettings", "Ignore compile status (include all items)"))
|
self.chkContentIgnoreCompile.setText(_translate("exporterSettings", "Ignore compile status (include all items)"))
|
||||||
self.chkContentParent.setText(_translate("exporterSettings", "Subitems of:"))
|
self.chkContentParent.setText(_translate("exporterSettings", "Subitems of:"))
|
||||||
self.cmbContentParent.setItemText(0, _translate("exporterSettings", "Root (all)"))
|
|
||||||
self.chkContentLabels.setText(_translate("exporterSettings", "Labels"))
|
self.chkContentLabels.setText(_translate("exporterSettings", "Labels"))
|
||||||
self.chkContentStatus.setText(_translate("exporterSettings", "Status"))
|
self.chkContentStatus.setText(_translate("exporterSettings", "Status"))
|
||||||
self.toolBox.setItemText(self.toolBox.indexOf(self.page), _translate("exporterSettings", "Content"))
|
self.toolBox.setItemText(self.toolBox.indexOf(self.content), _translate("exporterSettings", "Content"))
|
||||||
self.label_3.setText(_translate("exporterSettings", "Between folders:"))
|
self.label_3.setText(_translate("exporterSettings", "Between folders:"))
|
||||||
self.cmbSepFF.setItemText(0, _translate("exporterSettings", "Empty line"))
|
self.cmbSepFF.setItemText(0, _translate("exporterSettings", "Empty line"))
|
||||||
self.cmbSepFF.setItemText(1, _translate("exporterSettings", "Custom"))
|
self.cmbSepFF.setItemText(1, _translate("exporterSettings", "Custom"))
|
||||||
|
@ -509,7 +535,7 @@ class Ui_exporterSettings(object):
|
||||||
self.cmbSepTF.setItemText(0, _translate("exporterSettings", "Empty line"))
|
self.cmbSepTF.setItemText(0, _translate("exporterSettings", "Empty line"))
|
||||||
self.cmbSepTF.setItemText(1, _translate("exporterSettings", "Custom"))
|
self.cmbSepTF.setItemText(1, _translate("exporterSettings", "Custom"))
|
||||||
self.txtSepTF.setText(_translate("exporterSettings", "\\n"))
|
self.txtSepTF.setText(_translate("exporterSettings", "\\n"))
|
||||||
self.toolBox.setItemText(self.toolBox.indexOf(self.page_3), _translate("exporterSettings", "Separations"))
|
self.toolBox.setItemText(self.toolBox.indexOf(self.separations), _translate("exporterSettings", "Separations"))
|
||||||
self.grpTransTypo.setTitle(_translate("exporterSettings", "Typographic replacements:"))
|
self.grpTransTypo.setTitle(_translate("exporterSettings", "Typographic replacements:"))
|
||||||
self.chkTransEllipse.setText(_translate("exporterSettings", "Replace ... with …"))
|
self.chkTransEllipse.setText(_translate("exporterSettings", "Replace ... with …"))
|
||||||
self.chkTransDash.setText(_translate("exporterSettings", "Replace --- with —"))
|
self.chkTransDash.setText(_translate("exporterSettings", "Replace --- with —"))
|
||||||
|
@ -528,6 +554,10 @@ class Ui_exporterSettings(object):
|
||||||
item = self.tblReplacements.horizontalHeaderItem(3)
|
item = self.tblReplacements.horizontalHeaderItem(3)
|
||||||
item.setText(_translate("exporterSettings", "RegExp"))
|
item.setText(_translate("exporterSettings", "RegExp"))
|
||||||
item.setWhatsThis(_translate("exporterSettings", "If checked, uses regular expression for replacement. If unchecked, replaced as plain text."))
|
item.setWhatsThis(_translate("exporterSettings", "If checked, uses regular expression for replacement. If unchecked, replaced as plain text."))
|
||||||
self.toolBox.setItemText(self.toolBox.indexOf(self.page_2), _translate("exporterSettings", "Transformations"))
|
self.toolBox.setItemText(self.toolBox.indexOf(self.transformations), _translate("exporterSettings", "Transformations"))
|
||||||
|
self.groupBox.setTitle(_translate("exporterSettings", "Font"))
|
||||||
|
self.label_7.setText(_translate("exporterSettings", "Font:"))
|
||||||
|
self.label_8.setText(_translate("exporterSettings", "Font size:"))
|
||||||
|
self.toolBox.setItemText(self.toolBox.indexOf(self.preview), _translate("exporterSettings", "Preview"))
|
||||||
|
|
||||||
from manuskript.ui.collapsibleGroupBox2 import collapsibleGroupBox2
|
from manuskript.ui.collapsibleGroupBox2 import collapsibleGroupBox2
|
|
@ -43,18 +43,18 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
}</string>
|
}</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>0</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="tabSpacing">
|
<property name="tabSpacing">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="page">
|
<widget class="QWidget" name="content">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>491</width>
|
<width>491</width>
|
||||||
<height>824</height>
|
<height>842</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="label">
|
<attribute name="label">
|
||||||
|
@ -150,7 +150,7 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="label_2">
|
<widget class="QLabel" name="label_2">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Filters what items will be included in the final export.</string>
|
<string><html><head/><body><p>Filters what items will be included in the final export.<br/><span style=" color:#773333;">(Not fully implemented yet.)</span></p></body></html></string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -227,7 +227,15 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="page_3">
|
<widget class="QWidget" name="separations">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>511</width>
|
||||||
|
<height>522</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
<attribute name="label">
|
<attribute name="label">
|
||||||
<string>Separations</string>
|
<string>Separations</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
|
@ -286,7 +294,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="folder"/>
|
<iconset theme="folder">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -321,7 +331,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="folder"/>
|
<iconset theme="folder">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -410,7 +422,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="text-x-generic"/>
|
<iconset theme="text-x-generic">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -536,7 +550,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="folder"/>
|
<iconset theme="folder">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -571,7 +587,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="text-x-generic"/>
|
<iconset theme="text-x-generic">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -660,7 +678,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="text-x-generic"/>
|
<iconset theme="text-x-generic">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -695,7 +715,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="folder"/>
|
<iconset theme="folder">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -745,13 +767,13 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="page_2">
|
<widget class="QWidget" name="transformations">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>511</width>
|
<width>511</width>
|
||||||
<height>548</height>
|
<height>522</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
|
@ -814,9 +836,6 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLineEdit" name="txtTransDoubleQuotesA">
|
<widget class="QLineEdit" name="txtTransDoubleQuotesA">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
|
@ -841,13 +860,13 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<property name="frame">
|
<property name="frame">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="lblTransDoubleQuotes">
|
<widget class="QLabel" name="lblTransDoubleQuotes">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>…</string>
|
<string>…</string>
|
||||||
</property>
|
</property>
|
||||||
|
@ -855,9 +874,6 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLineEdit" name="txtTransDoubleQuotesB">
|
<widget class="QLineEdit" name="txtTransDoubleQuotesB">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
|
@ -882,6 +898,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<property name="frame">
|
<property name="frame">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
|
@ -920,9 +939,6 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLineEdit" name="txtTransSingleQuoteA">
|
<widget class="QLineEdit" name="txtTransSingleQuoteA">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
|
@ -947,13 +963,13 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<property name="frame">
|
<property name="frame">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="lblTransSingleQuote">
|
<widget class="QLabel" name="lblTransSingleQuote">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>…</string>
|
<string>…</string>
|
||||||
</property>
|
</property>
|
||||||
|
@ -961,9 +977,6 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLineEdit" name="txtTransSingleQuoteB">
|
<widget class="QLineEdit" name="txtTransSingleQuoteB">
|
||||||
<property name="enabled">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
|
@ -988,6 +1001,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<property name="frame">
|
<property name="frame">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
|
@ -1023,6 +1039,12 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_9">
|
<layout class="QVBoxLayout" name="verticalLayout_9">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTableWidget" name="tblReplacements">
|
<widget class="QTableWidget" name="tblReplacements">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
<property name="alternatingRowColors">
|
<property name="alternatingRowColors">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
|
@ -1078,7 +1100,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="list-add"/>
|
<iconset theme="list-add">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -1091,7 +1115,9 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset theme="list-remove"/>
|
<iconset theme="list-remove">
|
||||||
|
<normaloff/>
|
||||||
|
</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<property name="flat">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -1118,6 +1144,55 @@ QToolBox::tab:selected, QToolBox::tab:hover{
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
<widget class="QWidget" name="preview">
|
||||||
|
<attribute name="label">
|
||||||
|
<string>Preview</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_11">
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupBox">
|
||||||
|
<property name="title">
|
||||||
|
<string>Font</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QFormLayout" name="formLayout_3">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label_7">
|
||||||
|
<property name="text">
|
||||||
|
<string>Font:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QFontComboBox" name="cmbPreviewFont"/>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="label_8">
|
||||||
|
<property name="text">
|
||||||
|
<string>Font size:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QSpinBox" name="spnPreviewSize"/>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="verticalSpacer_4">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
Loading…
Reference in a new issue