-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathui_second_window.py
More file actions
103 lines (94 loc) · 4.11 KB
/
ui_second_window.py
File metadata and controls
103 lines (94 loc) · 4.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
"""Qt widgets for the document import dialog."""
from PyQt6.QtWidgets import (
QAbstractItemView,
QComboBox,
QHBoxLayout,
QLabel,
QLineEdit,
QPushButton,
QTableWidget,
QVBoxLayout,
)
class Ui_Dialog:
"""
UI definition for the document import dialog.
"""
def setupUi(self, dialog):
dialog.setWindowTitle("Import Document")
layout = QVBoxLayout(dialog)
self.infoLabel = QLabel(
"Choose a supported document file and preview extracted sections.",
dialog,
)
layout.addWidget(self.infoLabel)
path_row = QHBoxLayout()
self.filePathEdit = QLineEdit(dialog)
self.filePathEdit.setPlaceholderText(
"Path to .txt, .docx, .pdf, .html, .rtf, .epub, .xlsx, .csv, or .pptx file"
)
self.browseButton = QPushButton("Browse", dialog)
self.loadButton = QPushButton("Load", dialog)
self.cancelLoadButton = QPushButton("Cancel Load", dialog)
self.cancelLoadButton.setEnabled(False)
path_row.addWidget(self.filePathEdit)
path_row.addWidget(self.browseButton)
path_row.addWidget(self.loadButton)
path_row.addWidget(self.cancelLoadButton)
layout.addLayout(path_row)
self.previewLabel = QLabel("Preview", dialog)
layout.addWidget(self.previewLabel)
mode_row = QHBoxLayout()
self.selectionHelpLabel = QLabel(
"Select document rows and choose what to import or batch export:",
dialog,
)
self.contentModeComboBox = QComboBox(dialog)
mode_row.addWidget(self.selectionHelpLabel)
mode_row.addWidget(self.contentModeComboBox)
layout.addLayout(mode_row)
selection_row = QHBoxLayout()
self.selectAllButton = QPushButton("Select All", dialog)
self.clearSelectionButton = QPushButton("Clear Selection", dialog)
self.cleanSelectedButton = QPushButton("Clean Selected", dialog)
self.splitSelectedButton = QPushButton("Split Selected", dialog)
self.mergeSelectedButton = QPushButton("Merge Selected", dialog)
self.duplicateSelectedButton = QPushButton("Duplicate Selected", dialog)
self.deleteSelectedButton = QPushButton("Delete Selected", dialog)
self.restoreSelectedButton = QPushButton("Restore Selected", dialog)
selection_row.addWidget(self.selectAllButton)
selection_row.addWidget(self.clearSelectionButton)
selection_row.addWidget(self.cleanSelectedButton)
selection_row.addWidget(self.splitSelectedButton)
selection_row.addWidget(self.mergeSelectedButton)
selection_row.addWidget(self.duplicateSelectedButton)
selection_row.addWidget(self.deleteSelectedButton)
selection_row.addWidget(self.restoreSelectedButton)
selection_row.addStretch(1)
layout.addLayout(selection_row)
self.previewTable = QTableWidget(0, 3, dialog)
self.previewTable.setHorizontalHeaderLabels(
["Item", "Main Text", "Context"]
)
self.previewTable.setSelectionBehavior(
QAbstractItemView.SelectionBehavior.SelectRows
)
self.previewTable.setSelectionMode(
QAbstractItemView.SelectionMode.ExtendedSelection
)
self.previewTable.setEditTriggers(
QAbstractItemView.EditTrigger.DoubleClicked
| QAbstractItemView.EditTrigger.EditKeyPressed
| QAbstractItemView.EditTrigger.AnyKeyPressed
)
self.previewTable.verticalHeader().setVisible(False)
self.previewTable.horizontalHeader().setStretchLastSection(True)
self.previewTable.setAlternatingRowColors(True)
layout.addWidget(self.previewTable)
action_row = QHBoxLayout()
self.importButton = QPushButton("Import Selected", dialog)
self.batchExportButton = QPushButton("Batch Export Selected", dialog)
self.closeButton = QPushButton("Close", dialog)
action_row.addWidget(self.importButton)
action_row.addWidget(self.batchExportButton)
action_row.addWidget(self.closeButton)
layout.addLayout(action_row)