io4it 2.1.0.7__tar.gz → 2.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {io4it-2.1.0.7 → io4it-2.1.1}/PKG-INFO +1 -1
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/PKG-INFO +1 -1
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWDoclingMarkdownizerSimple.py +31 -4
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWOfficeNormalizer.py +26 -3
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWPdfType.py +47 -4
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWProcessPoolExecutor.py +1 -1
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owmarkdownloader.ui +29 -4
- {io4it-2.1.0.7 → io4it-2.1.1}/setup.py +1 -1
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/SOURCES.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/dependency_links.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/entry_points.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/namespace_packages.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/requires.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/io4it.egg-info/top_level.txt +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/ocr_function/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/ocr_function/word_converter.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/utils/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/utils/mail.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/utils/offuscation_basique.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/utils/pool_exec_utils.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/utils/utils_md.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWChatGpt.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWDeep_Search.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWExportMarkdown.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWMarkdownLoader.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWMarkdownizer.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWS3Uploader.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWS3downloader.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWS3list.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWSpeechToText.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWmailLoader.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWmailSender.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/OWwordpdf2docx.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/nogui.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/ow_file_ext_selector.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owchatgpt.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owdeepsearch.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owdoclingmarkdownizersimple.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owexportmarkdown.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owmailloader.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owmailsender.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owmarkdownizer.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owofficenormalizer.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owpdftype.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owprocesspoolexecutor.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owspeechtotext.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/wordpdf2docx.ui +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/chatgpt.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/check_pdf.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/deepsearch.svg +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/dep_md_old.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/download.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/export_md.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/file_extensor.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/list_aws.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/load_md.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/mail_loader.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/mail_writer.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/md.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/office_normalizer.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/process_pool_executor.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/speech_to_text.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/upload.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/visualizationer.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons/wordpdf2docx.png +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/icons_dev/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/__init__.py +0 -0
- {io4it-2.1.0.7 → io4it-2.1.1}/setup.cfg +0 -0
|
@@ -8,6 +8,9 @@ from Orange.widgets import widget
|
|
|
8
8
|
from Orange.widgets.utils.signals import Input, Output
|
|
9
9
|
from Orange.data import Domain, StringVariable, Table, DiscreteVariable
|
|
10
10
|
|
|
11
|
+
# --- Ajouts pour l'écriture Excel ---
|
|
12
|
+
from openpyxl import Workbook
|
|
13
|
+
|
|
11
14
|
# --- Docling (unique lib utilisée pour la conversion) ---
|
|
12
15
|
from docling.backend.pypdfium2_backend import PyPdfiumDocumentBackend
|
|
13
16
|
from docling.datamodel.base_models import InputFormat
|
|
@@ -208,9 +211,30 @@ class OWDoclingMarkdownizerSimple(widget.OWWidget):
|
|
|
208
211
|
self.Outputs.status_data.send(status_table)
|
|
209
212
|
|
|
210
213
|
def _run_conversion(self, files, progress_callback):
|
|
211
|
-
"""Main function to run the conversion, supports sequential and parallel modes."""
|
|
212
214
|
results = []
|
|
213
215
|
|
|
216
|
+
# Gère le chemin du fichier Excel
|
|
217
|
+
base_name = "conversion_results" # Nom de base pour le fichier Excel
|
|
218
|
+
# Définir le chemin du dossier de sortie de Docling
|
|
219
|
+
if files:
|
|
220
|
+
first_file_path = Path(files[0])
|
|
221
|
+
out_dir = first_file_path.parent / "conversion_markdown"
|
|
222
|
+
else:
|
|
223
|
+
out_dir = Path.cwd() / "conversion_markdown"
|
|
224
|
+
|
|
225
|
+
excel_path = out_dir / f"{base_name}.xlsx"
|
|
226
|
+
counter = 1
|
|
227
|
+
while excel_path.exists():
|
|
228
|
+
excel_path = out_dir / f"{base_name}_{counter}.xlsx"
|
|
229
|
+
counter += 1
|
|
230
|
+
|
|
231
|
+
# Initialise le classeur et la feuille Excel
|
|
232
|
+
wb = Workbook()
|
|
233
|
+
ws = wb.active
|
|
234
|
+
ws.title = "Conversion Results"
|
|
235
|
+
headers = ["input_path", "output_md", "status", "duration_sec", "message"]
|
|
236
|
+
ws.append(headers)
|
|
237
|
+
|
|
214
238
|
if self.external_executor is None:
|
|
215
239
|
# --- Mode simple séquentiel ---
|
|
216
240
|
for i, p in enumerate(files):
|
|
@@ -220,8 +244,8 @@ class OWDoclingMarkdownizerSimple(widget.OWWidget):
|
|
|
220
244
|
|
|
221
245
|
row = _convert_one_file(path_str)
|
|
222
246
|
results.append(row)
|
|
223
|
-
|
|
224
|
-
|
|
247
|
+
ws.append(row)
|
|
248
|
+
wb.save(excel_path)
|
|
225
249
|
self.status_update_signal.emit([row[0], row[2], row[4]])
|
|
226
250
|
|
|
227
251
|
progress_callback((i + 1) / len(files) * 100)
|
|
@@ -237,13 +261,16 @@ class OWDoclingMarkdownizerSimple(widget.OWWidget):
|
|
|
237
261
|
try:
|
|
238
262
|
row = fut.result()
|
|
239
263
|
results.append(row)
|
|
240
|
-
|
|
264
|
+
ws.append(row)
|
|
265
|
+
wb.save(excel_path)
|
|
241
266
|
self.status_update_signal.emit([row[0], row[2], row[4]])
|
|
242
267
|
except Exception as e:
|
|
243
268
|
# Gestion des erreurs de la future et envoi
|
|
244
269
|
row = [file_path_str, str((Path(file_path_str).parent / 'a_md' / f"{Path(file_path_str).stem}.md")),
|
|
245
270
|
"nok", "0.00", f"FutureError: {e}"]
|
|
246
271
|
results.append(row)
|
|
272
|
+
ws.append(row)
|
|
273
|
+
wb.save(excel_path)
|
|
247
274
|
self.status_update_signal.emit([row[0], "nok", f"FutureError: {e}"])
|
|
248
275
|
|
|
249
276
|
progress_callback(i / len(files) * 100)
|
|
@@ -9,6 +9,9 @@ from Orange.widgets import widget
|
|
|
9
9
|
from Orange.widgets.utils.signals import Input, Output
|
|
10
10
|
from Orange.data import Domain, StringVariable, Table, DiscreteVariable
|
|
11
11
|
|
|
12
|
+
# --- Ajout pour l'écriture Excel ---
|
|
13
|
+
from openpyxl import Workbook
|
|
14
|
+
|
|
12
15
|
if "site-packages/Orange/widgets" in os.path.dirname(os.path.abspath(__file__)).replace("\\", "/"):
|
|
13
16
|
from Orange.widgets.orangecontrib.IO4IT.utils import utils_md
|
|
14
17
|
from Orange.widgets.orangecontrib.AAIT.utils.import_uic import uic
|
|
@@ -44,7 +47,7 @@ class OWOfficeNormalizer(widget.OWWidget):
|
|
|
44
47
|
self.data = None
|
|
45
48
|
self.autorun = True
|
|
46
49
|
self.result = None
|
|
47
|
-
self.processed_statuses = []
|
|
50
|
+
self.processed_statuses = []
|
|
48
51
|
self.post_initialized()
|
|
49
52
|
|
|
50
53
|
@Inputs.data
|
|
@@ -67,7 +70,7 @@ class OWOfficeNormalizer(widget.OWWidget):
|
|
|
67
70
|
return
|
|
68
71
|
|
|
69
72
|
self.progressBarInit()
|
|
70
|
-
self.processed_statuses = []
|
|
73
|
+
self.processed_statuses = []
|
|
71
74
|
self.Outputs.status_data.send(None)
|
|
72
75
|
|
|
73
76
|
# Process files directly without a separate thread
|
|
@@ -91,6 +94,21 @@ class OWOfficeNormalizer(widget.OWWidget):
|
|
|
91
94
|
output_base_dir = common_path / "office_normalisation"
|
|
92
95
|
output_base_dir.mkdir(parents=True, exist_ok=True)
|
|
93
96
|
|
|
97
|
+
# Gère le nom du fichier Excel avec incrémentation
|
|
98
|
+
base_name = "normalization_results"
|
|
99
|
+
excel_path = output_base_dir / f"{base_name}.xlsx"
|
|
100
|
+
counter = 1
|
|
101
|
+
while excel_path.exists():
|
|
102
|
+
excel_path = output_base_dir / f"{base_name}_{counter}.xlsx"
|
|
103
|
+
counter += 1
|
|
104
|
+
|
|
105
|
+
# Initialise le classeur Excel
|
|
106
|
+
wb = Workbook()
|
|
107
|
+
ws = wb.active
|
|
108
|
+
ws.title = "Normalization Results"
|
|
109
|
+
headers = ["src_path", "dst_path", "status", "details"]
|
|
110
|
+
ws.append(headers)
|
|
111
|
+
|
|
94
112
|
for i, path_str in enumerate(file_paths):
|
|
95
113
|
self.progressBarSet(i / total_files * 100)
|
|
96
114
|
|
|
@@ -136,7 +154,12 @@ class OWOfficeNormalizer(widget.OWWidget):
|
|
|
136
154
|
details = f"error: {error_msg}"
|
|
137
155
|
status_text = f"ko: {details}"
|
|
138
156
|
|
|
139
|
-
#
|
|
157
|
+
# Ajoute la ligne de résultat à la table Excel et la sauvegarde
|
|
158
|
+
result_row = [path_str, dst_path, status_short, details]
|
|
159
|
+
ws.append(result_row)
|
|
160
|
+
wb.save(excel_path)
|
|
161
|
+
|
|
162
|
+
# Append to the final results list for Orange table
|
|
140
163
|
rows.append([path_str, dst_path, status_text])
|
|
141
164
|
|
|
142
165
|
# Append to the status update list and send the incremental table
|
|
@@ -9,6 +9,9 @@ from Orange.data import Domain, StringVariable, Table, DiscreteVariable
|
|
|
9
9
|
from Orange.widgets import widget
|
|
10
10
|
from Orange.widgets.utils.signals import Input, Output
|
|
11
11
|
|
|
12
|
+
# --- Ajout pour l'écriture Excel ---
|
|
13
|
+
from openpyxl import Workbook
|
|
14
|
+
|
|
12
15
|
# Les imports sont adaptés pour correspondre au style de l'autre script
|
|
13
16
|
if "site-packages/Orange/widgets" in os.path.dirname(os.path.abspath(__file__)).replace("\\", "/"):
|
|
14
17
|
from Orange.widgets.orangecontrib.IO4IT.utils import utils_md
|
|
@@ -99,7 +102,32 @@ class OWPdfType(widget.OWWidget):
|
|
|
99
102
|
|
|
100
103
|
def _process_pdfs(self, in_data: Table, progress_callback: callable, status_callback: callable) -> tuple[
|
|
101
104
|
Table | None, Table | None]:
|
|
105
|
+
|
|
106
|
+
# Extraction des chemins de fichiers avant de commencer le traitement
|
|
102
107
|
paths = [str(x) for x in in_data.get_column("file_path")]
|
|
108
|
+
|
|
109
|
+
# --- Gérer le nom du fichier Excel avec incrémentation ---
|
|
110
|
+
excel_output_dir = Path.cwd() / "pdf_check_results"
|
|
111
|
+
if paths:
|
|
112
|
+
first_file_path = Path(paths[0])
|
|
113
|
+
excel_output_dir = first_file_path.parent / "pdf_check_results"
|
|
114
|
+
|
|
115
|
+
excel_output_dir.mkdir(parents=True, exist_ok=True)
|
|
116
|
+
|
|
117
|
+
base_name = "pdf_check_results"
|
|
118
|
+
excel_path = excel_output_dir / f"{base_name}.xlsx"
|
|
119
|
+
counter = 1
|
|
120
|
+
while excel_path.exists():
|
|
121
|
+
excel_path = excel_output_dir / f"{base_name}_{counter}.xlsx"
|
|
122
|
+
counter += 1
|
|
123
|
+
|
|
124
|
+
# --- Initialiser le classeur Excel ---
|
|
125
|
+
wb = Workbook()
|
|
126
|
+
ws = wb.active
|
|
127
|
+
ws.title = "PDF Check Results"
|
|
128
|
+
headers = ["file_path", "status", "details"]
|
|
129
|
+
ws.append(headers)
|
|
130
|
+
|
|
103
131
|
text_indices = []
|
|
104
132
|
image_indices = []
|
|
105
133
|
|
|
@@ -108,21 +136,36 @@ class OWPdfType(widget.OWWidget):
|
|
|
108
136
|
progress_callback(i / total_files * 100)
|
|
109
137
|
|
|
110
138
|
fp = Path(p)
|
|
139
|
+
result_row = [p, "", ""] # Initialisation de la ligne de résultat
|
|
111
140
|
|
|
112
141
|
if not fp.exists() or fp.suffix.lower() != ".pdf":
|
|
113
|
-
|
|
142
|
+
result_row[1] = "ko"
|
|
143
|
+
result_row[2] = "Invalid file or not a PDF"
|
|
144
|
+
status_callback(result_row)
|
|
145
|
+
ws.append(result_row)
|
|
146
|
+
wb.save(excel_path)
|
|
114
147
|
continue
|
|
115
148
|
|
|
116
149
|
try:
|
|
117
150
|
is_text = utils_md.is_pdf_text_based(fp)
|
|
118
151
|
if is_text:
|
|
119
152
|
text_indices.append(i)
|
|
120
|
-
|
|
153
|
+
result_row[1] = "ok"
|
|
154
|
+
result_row[2] = "Text-based PDF"
|
|
121
155
|
else:
|
|
122
156
|
image_indices.append(i)
|
|
123
|
-
|
|
157
|
+
result_row[1] = "ok"
|
|
158
|
+
result_row[2] = "Image-based PDF"
|
|
159
|
+
|
|
160
|
+
status_callback(result_row)
|
|
161
|
+
ws.append(result_row)
|
|
162
|
+
wb.save(excel_path)
|
|
124
163
|
except Exception as e:
|
|
125
|
-
|
|
164
|
+
result_row[1] = "ko"
|
|
165
|
+
result_row[2] = f"Error: {str(e)}"
|
|
166
|
+
status_callback(result_row)
|
|
167
|
+
ws.append(result_row)
|
|
168
|
+
wb.save(excel_path)
|
|
126
169
|
|
|
127
170
|
progress_callback(100)
|
|
128
171
|
|
|
@@ -16,7 +16,7 @@ else:
|
|
|
16
16
|
class OWProcessPoolExecutor(widget.OWWidget):
|
|
17
17
|
name = "Process Pool Executor"
|
|
18
18
|
description = "Create and configure a Process Pool Executor"
|
|
19
|
-
category = "
|
|
19
|
+
category = "AAIT - TOOLBOX"
|
|
20
20
|
icon = "icons/process_pool_executor.png"
|
|
21
21
|
if "site-packages/Orange/widgets" in os.path.dirname(os.path.abspath(__file__)).replace("\\", "/"):
|
|
22
22
|
icon = "icons_dev/process_pool_executor.png"
|
|
@@ -13,13 +13,25 @@
|
|
|
13
13
|
<property name="windowTitle">
|
|
14
14
|
<string>Form</string>
|
|
15
15
|
</property>
|
|
16
|
+
<property name="minimumSize">
|
|
17
|
+
<size>
|
|
18
|
+
<width>470</width>
|
|
19
|
+
<height>311</height>
|
|
20
|
+
</size>
|
|
21
|
+
</property>
|
|
22
|
+
<property name="maximumSize">
|
|
23
|
+
<size>
|
|
24
|
+
<width>470</width>
|
|
25
|
+
<height>311</height>
|
|
26
|
+
</size>
|
|
27
|
+
</property>
|
|
16
28
|
<widget class="QGroupBox" name="groupBox">
|
|
17
29
|
<property name="geometry">
|
|
18
30
|
<rect>
|
|
19
31
|
<x>10</x>
|
|
20
32
|
<y>30</y>
|
|
21
|
-
<width>
|
|
22
|
-
<height>
|
|
33
|
+
<width>441</width>
|
|
34
|
+
<height>211</height>
|
|
23
35
|
</rect>
|
|
24
36
|
</property>
|
|
25
37
|
<property name="title">
|
|
@@ -31,7 +43,7 @@
|
|
|
31
43
|
<x>10</x>
|
|
32
44
|
<y>20</y>
|
|
33
45
|
<width>431</width>
|
|
34
|
-
<height>
|
|
46
|
+
<height>191</height>
|
|
35
47
|
</rect>
|
|
36
48
|
</property>
|
|
37
49
|
<property name="text">
|
|
@@ -47,8 +59,21 @@
|
|
|
47
59
|
<bool>true</bool>
|
|
48
60
|
</property>
|
|
49
61
|
</widget>
|
|
62
|
+
<widget class="QCheckBox" name="checkBoxRecursive">
|
|
63
|
+
<property name="geometry">
|
|
64
|
+
<rect>
|
|
65
|
+
<x>10</x>
|
|
66
|
+
<y>180</y>
|
|
67
|
+
<width>431</width>
|
|
68
|
+
<height>21</height>
|
|
69
|
+
</rect>
|
|
70
|
+
</property>
|
|
71
|
+
<property name="text">
|
|
72
|
+
<string>Recherche récursive</string>
|
|
73
|
+
</property>
|
|
74
|
+
</widget>
|
|
50
75
|
</widget>
|
|
51
76
|
</widget>
|
|
52
77
|
<resources/>
|
|
53
78
|
<connections/>
|
|
54
|
-
</ui>
|
|
79
|
+
</ui>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{io4it-2.1.0.7 → io4it-2.1.1}/orangecontrib/IO4IT/widgets/designer/owdoclingmarkdownizersimple.ui
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|