aait 2.2.0__tar.gz → 2.2.2__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.
- {aait-2.2.0 → aait-2.2.2}/PKG-INFO +1 -1
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/PKG-INFO +1 -1
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/windows_utils.py +14 -12
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWFusionNM.py +15 -3
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWGenerateWord.py +4 -16
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWInputSelector.py +62 -20
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/ow_in_or_out_path.ui +29 -6
- {aait-2.2.0 → aait-2.2.2}/setup.py +1 -1
- {aait-2.2.0 → aait-2.2.2}/License.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/SOURCES.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/dependency_links.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/entry_points.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/namespace_packages.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/requires.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/aait.egg-info/top_level.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/SignalReceiver.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/audit_widget.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (2).TIF +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (3).TIF +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (4).TIF +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0001.csv +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0002.csv +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0003.csv +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dynamic_results.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/test_all_widgets.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/test_server.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_4all.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_chunking.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_edit_table.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_mpnet_create_embeddings.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_optimisation.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_optimisationselection.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_powfactory.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_queryllm.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_spacy_md_fr_lemmatizer.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widget_traduction.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/widgets_model.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/encapsulation/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/fix_torch/fix_torch_dll_error.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/fix_torch/libomp140.x86_64.dll +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/MergeBaseLora.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/SERV_kill_workflow.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/SERV_requests.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/SERV_start_workflow.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/Tutorial_Finetuning.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/Tutorial_TestFinetuning.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/answers.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/chunking.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/embeddings.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/finetuning.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/functions_DatasetGeneration.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/functions_Finetuning.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/lemmes.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/lmstudio.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/main_DatasetGeneration.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/main_Finetuning.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/process_documents.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/prompt_management.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/quickpy.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/test.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/test_functions.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/llm/translations.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/optimiser/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/optimiser/optuna_multi.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/CheckMetaData.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/MetManagement.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/SimpleDialogQt.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/aait_repo_file.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/check_data_in.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/delta_local_shared_fodler.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/import_uic.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/initialize_from_ini.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/mac_utils.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/shared_functions.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/shared_variables.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/subprocess_management.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/thread_management.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/tools/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/tools/change_owcorpus.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/tools/concat_splitted_pypi.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/tools/first_time_check.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/utils/tools/owcorpus_ok.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWAAITResourcesManager.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWAddColumns.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWApplyRules.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWCN2rule_view.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWChunking.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWConcatRules.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWConverseLLM.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWCreateEmbeddings.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWDisplayMD.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWEditTable.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWEmptySwitch.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWEndLoop.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWExecuteScript.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWExtraChunks.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWExtractTokens.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWFileMetadata.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWFileSyncChecker.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWFileWithPath.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWFindFilesFromDir.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWGenerateQuestions.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWGenerateSynthesis.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWKeywordsDetection.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWLMStudio.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWLanguageDetection.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWLemmatizer.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_CE_MiniLML6.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Falcon.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_HelsinkiEnFr.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_HelsinkiFrEn.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_MPNET.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Mistral.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen1B5_Q6.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen2_5_32B.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen3B_Q4.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q4.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q6.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_Solar.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_SolarUncensored.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_EN.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_FR.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWOptimisation.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWOptimisationSelection.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWOptimisationSendScore.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWProcessDocumentsFromPath.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWQueryLLM.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWRandomData.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWReranking.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWSaveFilepathEntry.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWSelectColumnDynamique.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWSelectRowsDynamic.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWStartLoop.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWTable2Corpus.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWTranslation.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWTrigger.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/OWUnzipFolder.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/POW_Wfactory.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owMarkdown.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/ow_widget_random_data.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owaddcolumns.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owapplyrules.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owchunking.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owconcatrules.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owconversellm.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owembeddings.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owemptyswitch.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owendloop.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owexecutescript.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owextrachunks.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owextracttokens.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owfilemetadata.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owfilesyncchecker.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owfilewithpath.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owfindfilesfromdir.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owfusion_nm.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owgenerate_word.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owgeneratequestions.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owgeneratesynthesis.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owkeyword.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owkeywordsdetection.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owlangdetect.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owlemmatizer.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owloadworkflow.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_ce_minilml6.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_falcon.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_en_fr.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_fr_en.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_mistral.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_mpnet.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_2.5_32b.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_1.5b_q6.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_3b_q4.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q4.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q6.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_qwencoder_7b.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_solar.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_solar_uncensored.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_en.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_fr.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/ownumberpointinrules.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owprocessdocuments.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owqueryllm.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owreranking.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owsavewithpath.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owselect_column_dynamic.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owselect_row_dynamic.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owstartloop.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owtable2corpus.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owtranslation.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owtrigger.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/designer/owunzipfolder.ui +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/CN2RuleViewer.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/MDViewer.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/Mistral.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/apply_rules.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/category.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/dark_green.txt +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/de.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/document_generator.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/documents.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/endloop.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/extra_chunks.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/in_or_out.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/input.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/languages.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/lm_studio.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/local_interf_img_multi_pull.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/local_interf_multi_pull.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/local_interf_pull.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/local_interf_push.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/local_interf_text_pull.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/logo_solar.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/logo_uncensoredsolar.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/logo_upload.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/models.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/optimisation.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/optimizer.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/output.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owCN2_intersect_rules.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owchunking.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owconversellm.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owedittable.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owembeddings.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owemptyswitch.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owenvinfo.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owexecutescript.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owextracttokens.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owfilemetadata.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owfilesfromdir.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owfilesyncchecker.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owfilewithpath.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owfusion_nm.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owgeneratequestions.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owgeneratesynthesis.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owkeywordsdetection.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owlemmatizer.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_ce_minilml6.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_falcon.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_en_fr.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_fr_en.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_mpnet.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_en.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_fr.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owoptimisation.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owoptimisationselection.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owqueryllm.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owreranking.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owsavefilepathentry.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owselectcolumndynamique.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owtable2corpus.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owtranslation.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/owtrigger.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/processdocuments.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/qwen-color.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/select_dynamic_row.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/startloop.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/tools.png +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/widgetFactory.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/widgets/icons/zip.svg +0 -0
- {aait-2.2.0 → aait-2.2.2}/orangecontrib/__init__.py +0 -0
- {aait-2.2.0 → aait-2.2.2}/setup.cfg +0 -0
|
@@ -54,7 +54,7 @@ if os.name=='nt':
|
|
|
54
54
|
|
|
55
55
|
return not aborted
|
|
56
56
|
|
|
57
|
-
def select_folder_ctypes():
|
|
57
|
+
def select_folder_ctypes(title="Select a directory"):
|
|
58
58
|
"""
|
|
59
59
|
Opens a native Windows folder selection dialog with enforced modal-like behavior, without attaching to any parent window.
|
|
60
60
|
|
|
@@ -124,7 +124,7 @@ if os.name=='nt':
|
|
|
124
124
|
browse_info.hwndOwner = 0
|
|
125
125
|
browse_info.pidlRoot = None
|
|
126
126
|
browse_info.pszDisplayName = ctypes.cast(display_name_buffer, ctypes.c_wchar_p)
|
|
127
|
-
browse_info.lpszTitle =
|
|
127
|
+
browse_info.lpszTitle = title
|
|
128
128
|
browse_info.ulFlags = BIF_RETURNONLYFSDIRS | BIF_NEWDIALOGSTYLE
|
|
129
129
|
browse_info.lpfn = None
|
|
130
130
|
browse_info.lParam = None
|
|
@@ -198,7 +198,7 @@ if os.name=='nt':
|
|
|
198
198
|
import ctypes.wintypes
|
|
199
199
|
|
|
200
200
|
|
|
201
|
-
def select_file_ctypes(multi_select=False, file_filter="All Files (*.*)"):
|
|
201
|
+
def select_file_ctypes(multi_select=False, file_filter="All Files (*.*)", dialog_title="Select File(s)"):
|
|
202
202
|
"""
|
|
203
203
|
Opens a native Windows file selection dialog with enforced modal-like behavior.
|
|
204
204
|
|
|
@@ -262,7 +262,7 @@ if os.name=='nt':
|
|
|
262
262
|
ofn.lpstrFilter = filter_combined
|
|
263
263
|
ofn.lpstrFile = ctypes.cast(file_buffer, ctypes.c_wchar_p)
|
|
264
264
|
ofn.nMaxFile = MAX_PATH
|
|
265
|
-
ofn.lpstrTitle =
|
|
265
|
+
ofn.lpstrTitle = dialog_title
|
|
266
266
|
ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST
|
|
267
267
|
if multi_select:
|
|
268
268
|
ofn.Flags |= OFN_ALLOWMULTISELECT
|
|
@@ -291,12 +291,13 @@ if os.name=='nt':
|
|
|
291
291
|
new_hwnds = list(set(hwnd_list_after) - set(hwnd_list_before))
|
|
292
292
|
|
|
293
293
|
selector_hwnd = None
|
|
294
|
+
target_phrase = (dialog_title or "Select").lower()
|
|
294
295
|
for hwnd in new_hwnds:
|
|
295
296
|
length = user32.GetWindowTextLengthW(hwnd)
|
|
296
297
|
if length > 0:
|
|
297
|
-
|
|
298
|
-
user32.GetWindowTextW(hwnd,
|
|
299
|
-
if
|
|
298
|
+
window_title = ctypes.create_unicode_buffer(length + 1)
|
|
299
|
+
user32.GetWindowTextW(hwnd, window_title, length + 1)
|
|
300
|
+
if target_phrase in window_title.value.lower():
|
|
300
301
|
selector_hwnd = hwnd
|
|
301
302
|
break
|
|
302
303
|
|
|
@@ -335,7 +336,7 @@ if os.name=='nt':
|
|
|
335
336
|
|
|
336
337
|
|
|
337
338
|
|
|
338
|
-
def select_new_file_ctypes(file_filter="All Files (*.*)"):
|
|
339
|
+
def select_new_file_ctypes(file_filter="All Files (*.*)", dialog_title="Create New File"):
|
|
339
340
|
"""
|
|
340
341
|
Opens a native Windows file dialog for creating a new file.
|
|
341
342
|
|
|
@@ -401,7 +402,7 @@ def select_new_file_ctypes(file_filter="All Files (*.*)"):
|
|
|
401
402
|
ofn.lpstrFilter = filter_combined
|
|
402
403
|
ofn.lpstrFile = ctypes.cast(file_buffer, ctypes.c_wchar_p)
|
|
403
404
|
ofn.nMaxFile = MAX_PATH
|
|
404
|
-
ofn.lpstrTitle =
|
|
405
|
+
ofn.lpstrTitle = dialog_title
|
|
405
406
|
ofn.Flags = OFN_EXPLORER
|
|
406
407
|
ofn.lpstrDefExt = first_ext # <- extension ajoutée automatiquement si absente
|
|
407
408
|
|
|
@@ -427,12 +428,13 @@ def select_new_file_ctypes(file_filter="All Files (*.*)"):
|
|
|
427
428
|
new_hwnds = list(set(hwnd_list_after) - set(hwnd_list_before))
|
|
428
429
|
|
|
429
430
|
selector_hwnd = None
|
|
431
|
+
target_phrase = (dialog_title or "Save").lower()
|
|
430
432
|
for hwnd in new_hwnds:
|
|
431
433
|
length = user32.GetWindowTextLengthW(hwnd)
|
|
432
434
|
if length > 0:
|
|
433
|
-
|
|
434
|
-
user32.GetWindowTextW(hwnd,
|
|
435
|
-
if
|
|
435
|
+
window_title = ctypes.create_unicode_buffer(length + 1)
|
|
436
|
+
user32.GetWindowTextW(hwnd, window_title, length + 1)
|
|
437
|
+
if target_phrase in window_title.value.lower():
|
|
436
438
|
selector_hwnd = hwnd
|
|
437
439
|
break
|
|
438
440
|
|
|
@@ -368,8 +368,19 @@ class OWFusionNN(widget.OWWidget):
|
|
|
368
368
|
Y_out = np.full((n_rows,), np.nan)
|
|
369
369
|
else:
|
|
370
370
|
Y_out = np.full((n_rows, len(out_classes)), np.nan)
|
|
371
|
-
M_out = np.
|
|
372
|
-
|
|
371
|
+
M_out = np.full((n_rows, len(out_metas)), None, dtype=object)
|
|
372
|
+
def normalize_meta_value(value):
|
|
373
|
+
if value is None:
|
|
374
|
+
return None
|
|
375
|
+
if isinstance(value, (float, np.floating)):
|
|
376
|
+
if np.isnan(value):
|
|
377
|
+
return None
|
|
378
|
+
try:
|
|
379
|
+
if value != value:
|
|
380
|
+
return None
|
|
381
|
+
except Exception:
|
|
382
|
+
pass
|
|
383
|
+
return value
|
|
373
384
|
|
|
374
385
|
# Helpers d'accès aux valeurs source
|
|
375
386
|
def get_class_val(table: Orange.data.Table, row: int, idx: int):
|
|
@@ -405,7 +416,8 @@ class OWFusionNN(widget.OWWidget):
|
|
|
405
416
|
if s != side:
|
|
406
417
|
continue
|
|
407
418
|
if src_table.metas.shape[1] > idx:
|
|
408
|
-
|
|
419
|
+
raw_value = src_table.metas[src_row, idx]
|
|
420
|
+
M_out[out_row, pos] = normalize_meta_value(raw_value)
|
|
409
421
|
|
|
410
422
|
# Remplir lignes: appariées, puis A-only, puis B-only
|
|
411
423
|
r = 0
|
|
@@ -139,13 +139,10 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
139
139
|
@Inputs.tables
|
|
140
140
|
def set_table(self, index, data):
|
|
141
141
|
"""Tables à insérer - le nom de la connexion = balise cible"""
|
|
142
|
-
print(index)
|
|
143
142
|
if data is not None:
|
|
144
143
|
# Essayer de récupérer le nom de la table depuis les métadonnées
|
|
145
144
|
table_name = self.get_table_name(data, index)
|
|
146
145
|
self.tables_dict[table_name] = data
|
|
147
|
-
print(self.tables_dict)
|
|
148
|
-
print(f"Table '{table_name}' connectée")
|
|
149
146
|
self.check_and_run()
|
|
150
147
|
|
|
151
148
|
@Inputs.tables.insert
|
|
@@ -155,8 +152,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
155
152
|
if data is not None:
|
|
156
153
|
table_name = self.get_table_name(data, index)
|
|
157
154
|
self.tables_dict[table_name] = data
|
|
158
|
-
print(self.tables_dict)
|
|
159
|
-
print(f"Table '{table_name}' ajoutée")
|
|
160
155
|
self.check_and_run()
|
|
161
156
|
|
|
162
157
|
@Inputs.tables.remove
|
|
@@ -164,7 +159,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
164
159
|
"""Gère la suppression d'une table"""
|
|
165
160
|
# Trouver et supprimer la table correspondante
|
|
166
161
|
key=list(self.tables_dict.keys())
|
|
167
|
-
print(" la table a supprimer:",self.tables_dict[key[index]])
|
|
168
162
|
del self.tables_dict[key[index]]
|
|
169
163
|
self.check_and_run()
|
|
170
164
|
|
|
@@ -198,7 +192,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
198
192
|
"""Méthode principale de traitement"""
|
|
199
193
|
self.error("")
|
|
200
194
|
self.warning("")
|
|
201
|
-
print("")
|
|
202
195
|
|
|
203
196
|
try:
|
|
204
197
|
# 1. Charger le template
|
|
@@ -208,7 +201,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
208
201
|
return
|
|
209
202
|
|
|
210
203
|
self.doc = Document(template_path)
|
|
211
|
-
print(f"Template chargé : {os.path.basename(template_path)}")
|
|
212
204
|
|
|
213
205
|
# 2. Effectuer les remplacements de texte
|
|
214
206
|
if self.replacements_table is not None:
|
|
@@ -224,7 +216,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
224
216
|
# 5. Envoyer le résultat
|
|
225
217
|
self.send_result(output_path)
|
|
226
218
|
|
|
227
|
-
print(f"✅ Document généré : {os.path.basename(output_path)}")
|
|
228
219
|
|
|
229
220
|
except Exception as e:
|
|
230
221
|
self.error(f"Erreur : {str(e)}")
|
|
@@ -322,7 +313,6 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
322
313
|
self.replace_text_in_doc(target, value)
|
|
323
314
|
count += 1
|
|
324
315
|
|
|
325
|
-
print(f"✓ {count} remplacements de texte effectués")
|
|
326
316
|
|
|
327
317
|
def replace_text_in_doc(self, placeholder: str, value: str):
|
|
328
318
|
"""Remplace du texte dans tout le document"""
|
|
@@ -387,11 +377,8 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
387
377
|
|
|
388
378
|
if self.insert_table_in_doc(target, table_data):
|
|
389
379
|
count += 1 # Compteur pour l'app
|
|
390
|
-
print(f"✓ Table insérée à la position {target}")
|
|
391
380
|
|
|
392
|
-
|
|
393
|
-
print("✓ ", count, "tableaux insérés")
|
|
394
|
-
print(f"✓ {count} tableaux insérés")
|
|
381
|
+
|
|
395
382
|
|
|
396
383
|
def insert_table_in_doc(self, tag: str, table_data: Table) -> bool:
|
|
397
384
|
"""Insère un tableau dans le document"""
|
|
@@ -534,6 +521,7 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
534
521
|
rFonts.set(qn('w:hAnsi'), self.default_font)
|
|
535
522
|
|
|
536
523
|
|
|
524
|
+
|
|
537
525
|
def save_document(self) -> str:
|
|
538
526
|
"""Sauvegarde le document"""
|
|
539
527
|
output_name = "output.docx"
|
|
@@ -544,12 +532,12 @@ class OWDocumentGenerator(widget.OWWidget):
|
|
|
544
532
|
|
|
545
533
|
# Chercher Output_Name
|
|
546
534
|
for attr in self.paths_table.domain.attributes:
|
|
547
|
-
if attr.name == "
|
|
535
|
+
if attr.name == "Output_Path":
|
|
548
536
|
output_name = str(row[attr])
|
|
549
537
|
break
|
|
550
538
|
else:
|
|
551
539
|
for i, meta in enumerate(self.paths_table.domain.metas):
|
|
552
|
-
if meta.name == "
|
|
540
|
+
if meta.name == "Output_Path":
|
|
553
541
|
output_name = str(self.paths_table.metas[0, i])
|
|
554
542
|
break
|
|
555
543
|
|
|
@@ -38,6 +38,7 @@ class OWInputSelector(OWWidget):
|
|
|
38
38
|
new_file:str = Setting("False")
|
|
39
39
|
combo_box_current_text: str=Setting("All (*.*)")
|
|
40
40
|
line_edit_value:str=Setting("")
|
|
41
|
+
dialog_window_title: str = Setting("")
|
|
41
42
|
def update_qt_view_from_settings(self):
|
|
42
43
|
if str(self.select_folder_radio_button_checked) =="True":
|
|
43
44
|
self.radioButton.setChecked(True)
|
|
@@ -45,6 +46,7 @@ class OWInputSelector(OWWidget):
|
|
|
45
46
|
self.checkBox.hide()
|
|
46
47
|
self.comboBox.hide()
|
|
47
48
|
self.checkBox_new_file.hide()
|
|
49
|
+
self.update_dialog_title_placeholder()
|
|
48
50
|
return
|
|
49
51
|
self.radioButton.setChecked(False)
|
|
50
52
|
self.radioButton2.setChecked(True)
|
|
@@ -70,6 +72,7 @@ class OWInputSelector(OWWidget):
|
|
|
70
72
|
self.checkBox.show()
|
|
71
73
|
self.comboBox.show()
|
|
72
74
|
self.checkBox_new_file.show()
|
|
75
|
+
self.update_dialog_title_placeholder()
|
|
73
76
|
|
|
74
77
|
|
|
75
78
|
def update_setting_from_qt_view(self):
|
|
@@ -107,7 +110,7 @@ class OWInputSelector(OWWidget):
|
|
|
107
110
|
|
|
108
111
|
|
|
109
112
|
self.setFixedWidth(700)
|
|
110
|
-
self.setFixedHeight(
|
|
113
|
+
self.setFixedHeight(400)
|
|
111
114
|
uic.loadUi(self.gui, self)
|
|
112
115
|
self.radioButton=self.findChild(QRadioButton, 'radioButton')
|
|
113
116
|
self.radioButton2 = self.findChild(QRadioButton, 'radioButton_2')
|
|
@@ -117,6 +120,14 @@ class OWInputSelector(OWWidget):
|
|
|
117
120
|
self.pushButton = self.findChild(QPushButton, 'pushButton')
|
|
118
121
|
self.lineEdit=self.findChild(QLineEdit,'lineEdit')
|
|
119
122
|
self.lineEdit.setText(self.line_edit_value)
|
|
123
|
+
self.windowTitleEdit = self.findChild(QLineEdit, 'lineEdit_window_title')
|
|
124
|
+
if self.windowTitleEdit is not None:
|
|
125
|
+
sanitized_title = (self.dialog_window_title or "").strip()
|
|
126
|
+
if sanitized_title != self.dialog_window_title:
|
|
127
|
+
self.dialog_window_title = sanitized_title
|
|
128
|
+
self.windowTitleEdit.setText(sanitized_title)
|
|
129
|
+
self.update_dialog_title_placeholder()
|
|
130
|
+
self.windowTitleEdit.editingFinished.connect(self.update_dialog_title_setting)
|
|
120
131
|
|
|
121
132
|
# based on the string you can modify orders and add without problem
|
|
122
133
|
file_types = [
|
|
@@ -264,6 +275,35 @@ class OWInputSelector(OWWidget):
|
|
|
264
275
|
self.checkBox_new_file.setEnabled(False)
|
|
265
276
|
self.comboBox.setEnabled(False)
|
|
266
277
|
|
|
278
|
+
def update_dialog_title_setting(self):
|
|
279
|
+
if getattr(self, 'windowTitleEdit', None) is None:
|
|
280
|
+
return
|
|
281
|
+
value = self.windowTitleEdit.text().strip()
|
|
282
|
+
if self.windowTitleEdit.text() != value:
|
|
283
|
+
self.windowTitleEdit.setText(value)
|
|
284
|
+
self.dialog_window_title = value
|
|
285
|
+
self.update_dialog_title_placeholder()
|
|
286
|
+
|
|
287
|
+
def get_default_dialog_title(self):
|
|
288
|
+
if str(self.select_folder_radio_button_checked) == "True":
|
|
289
|
+
return "Select a directory"
|
|
290
|
+
if str(self.new_file) == "True":
|
|
291
|
+
return "Create New File"
|
|
292
|
+
return "Select File(s)"
|
|
293
|
+
|
|
294
|
+
def get_effective_dialog_title(self):
|
|
295
|
+
default_title = self.get_default_dialog_title()
|
|
296
|
+
if self.dialog_window_title:
|
|
297
|
+
value = self.dialog_window_title.strip()
|
|
298
|
+
if value:
|
|
299
|
+
return value
|
|
300
|
+
return default_title
|
|
301
|
+
|
|
302
|
+
def update_dialog_title_placeholder(self):
|
|
303
|
+
if getattr(self, 'windowTitleEdit', None) is None:
|
|
304
|
+
return
|
|
305
|
+
self.windowTitleEdit.setPlaceholderText(self.get_default_dialog_title())
|
|
306
|
+
|
|
267
307
|
|
|
268
308
|
@Inputs.input_table
|
|
269
309
|
def input_table(self, data):
|
|
@@ -279,7 +319,7 @@ class OWInputSelector(OWWidget):
|
|
|
279
319
|
self.commit_path()
|
|
280
320
|
return
|
|
281
321
|
if str(self.select_folder_radio_button_checked) =="True":
|
|
282
|
-
self.selected_path=self.select_folder()
|
|
322
|
+
self.selected_path = self.select_folder(self.get_effective_dialog_title())
|
|
283
323
|
if self.selected_path is None:
|
|
284
324
|
self.selected_path=""
|
|
285
325
|
if self.selected_path=="":
|
|
@@ -290,10 +330,11 @@ class OWInputSelector(OWWidget):
|
|
|
290
330
|
if str(self.select_multiple_file_checked)!="False":
|
|
291
331
|
multi_select=True
|
|
292
332
|
file_filter=str(self.combo_box_current_text)
|
|
333
|
+
dialog_title = self.get_effective_dialog_title()
|
|
293
334
|
if str(self.new_file)=="False":
|
|
294
|
-
self.selected_path=self.select_file(multi_select,file_filter)
|
|
335
|
+
self.selected_path = self.select_file(multi_select, file_filter, dialog_title)
|
|
295
336
|
else:
|
|
296
|
-
self.selected_path = self.select_new_file(file_filter)
|
|
337
|
+
self.selected_path = self.select_new_file(file_filter, dialog_title)
|
|
297
338
|
if self.selected_path is None:
|
|
298
339
|
self.selected_path = ""
|
|
299
340
|
if self.selected_path == "":
|
|
@@ -301,42 +342,43 @@ class OWInputSelector(OWWidget):
|
|
|
301
342
|
self.commit_path()
|
|
302
343
|
return
|
|
303
344
|
|
|
304
|
-
def select_file(self,multi_select,
|
|
345
|
+
def select_file(self, multi_select, file_filter, dialog_title):
|
|
305
346
|
if os.name == 'nt':
|
|
306
|
-
return windows_utils.select_file_ctypes(
|
|
347
|
+
return windows_utils.select_file_ctypes(
|
|
348
|
+
multi_select=multi_select,
|
|
349
|
+
file_filter=file_filter,
|
|
350
|
+
dialog_title=dialog_title
|
|
351
|
+
)
|
|
307
352
|
print("a faire correctement sans qt sur mac (et linux")
|
|
308
353
|
from AnyQt.QtWidgets import QFileDialog
|
|
309
354
|
files, _ = QFileDialog.getOpenFileNames(
|
|
310
355
|
self, # parent
|
|
311
|
-
|
|
312
|
-
"", #
|
|
313
|
-
|
|
356
|
+
dialog_title, # window title
|
|
357
|
+
"", # initial directory
|
|
358
|
+
file_filter # filter
|
|
314
359
|
)
|
|
315
360
|
return files
|
|
316
361
|
|
|
317
|
-
def select_new_file(self,
|
|
362
|
+
def select_new_file(self, file_filter, dialog_title):
|
|
318
363
|
if os.name == 'nt':
|
|
319
|
-
return windows_utils.select_new_file_ctypes(file_filter=
|
|
364
|
+
return windows_utils.select_new_file_ctypes(file_filter=file_filter, dialog_title=dialog_title)
|
|
320
365
|
print("a faire correctement sans qt sur mac (et linux")
|
|
321
366
|
from AnyQt.QtWidgets import QFileDialog
|
|
322
367
|
files, _ = QFileDialog.getSaveFileName(
|
|
323
368
|
self, # parent
|
|
324
|
-
|
|
325
|
-
"", #
|
|
326
|
-
|
|
369
|
+
dialog_title, # window title
|
|
370
|
+
"", # initial directory
|
|
371
|
+
file_filter # filter
|
|
327
372
|
)
|
|
328
373
|
return str(files)
|
|
329
374
|
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
def select_folder(self):
|
|
375
|
+
def select_folder(self, dialog_title):
|
|
334
376
|
if os.name=='nt':
|
|
335
|
-
return windows_utils.select_folder_ctypes()
|
|
377
|
+
return windows_utils.select_folder_ctypes(title=dialog_title)
|
|
336
378
|
# a faire correctement sans qt sur mac
|
|
337
379
|
print("a faire correctement sans qt sur mac (et linux")
|
|
338
380
|
from AnyQt.QtWidgets import QFileDialog
|
|
339
|
-
return QFileDialog.getExistingDirectory(self,
|
|
381
|
+
return QFileDialog.getExistingDirectory(self, dialog_title)
|
|
340
382
|
|
|
341
383
|
def commit_path(self):
|
|
342
384
|
self.error("")
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
<rect>
|
|
7
7
|
<x>0</x>
|
|
8
8
|
<y>0</y>
|
|
9
|
-
<width>
|
|
10
|
-
<height>
|
|
9
|
+
<width>717</width>
|
|
10
|
+
<height>382</height>
|
|
11
11
|
</rect>
|
|
12
12
|
</property>
|
|
13
13
|
<property name="windowTitle">
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
<property name="geometry">
|
|
18
18
|
<rect>
|
|
19
19
|
<x>180</x>
|
|
20
|
-
<y>
|
|
20
|
+
<y>270</y>
|
|
21
21
|
<width>501</width>
|
|
22
22
|
<height>51</height>
|
|
23
23
|
</rect>
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
<property name="geometry">
|
|
31
31
|
<rect>
|
|
32
32
|
<x>30</x>
|
|
33
|
-
<y>
|
|
33
|
+
<y>240</y>
|
|
34
34
|
<width>651</width>
|
|
35
35
|
<height>20</height>
|
|
36
36
|
</rect>
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<property name="geometry">
|
|
41
41
|
<rect>
|
|
42
42
|
<x>20</x>
|
|
43
|
-
<y>
|
|
43
|
+
<y>80</y>
|
|
44
44
|
<width>671</width>
|
|
45
45
|
<height>151</height>
|
|
46
46
|
</rect>
|
|
@@ -114,6 +114,29 @@
|
|
|
114
114
|
</property>
|
|
115
115
|
</widget>
|
|
116
116
|
</widget>
|
|
117
|
+
<widget class="QLabel" name="label_window_title">
|
|
118
|
+
<property name="geometry">
|
|
119
|
+
<rect>
|
|
120
|
+
<x>20</x>
|
|
121
|
+
<y>30</y>
|
|
122
|
+
<width>211</width>
|
|
123
|
+
<height>16</height>
|
|
124
|
+
</rect>
|
|
125
|
+
</property>
|
|
126
|
+
<property name="text">
|
|
127
|
+
<string>Windows dialog title (optional)</string>
|
|
128
|
+
</property>
|
|
129
|
+
</widget>
|
|
130
|
+
<widget class="QLineEdit" name="lineEdit_window_title">
|
|
131
|
+
<property name="geometry">
|
|
132
|
+
<rect>
|
|
133
|
+
<x>20</x>
|
|
134
|
+
<y>50</y>
|
|
135
|
+
<width>651</width>
|
|
136
|
+
<height>20</height>
|
|
137
|
+
</rect>
|
|
138
|
+
</property>
|
|
139
|
+
</widget>
|
|
117
140
|
<widget class="QCheckBox" name="checkBox_3_send">
|
|
118
141
|
<property name="enabled">
|
|
119
142
|
<bool>false</bool>
|
|
@@ -121,7 +144,7 @@
|
|
|
121
144
|
<property name="geometry">
|
|
122
145
|
<rect>
|
|
123
146
|
<x>20</x>
|
|
124
|
-
<y>
|
|
147
|
+
<y>330</y>
|
|
125
148
|
<width>201</width>
|
|
126
149
|
<height>16</height>
|
|
127
150
|
</rect>
|
|
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
|
|
|
4
4
|
NAME = "aait"
|
|
5
5
|
|
|
6
6
|
# Version du package PyPI
|
|
7
|
-
VERSION = "2.2.
|
|
7
|
+
VERSION = "2.2.2" # la version doit être supérieure à la précédente sinon la publication sera refusée
|
|
8
8
|
|
|
9
9
|
# Facultatif / Adaptable à souhait
|
|
10
10
|
AUTHOR = "Orange community"
|
|
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
|
{aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (2).TIF
RENAMED
|
File without changes
|
{aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (3).TIF
RENAMED
|
File without changes
|
{aait-2.2.0 → aait-2.2.2}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (4).TIF
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
|
|
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
|