aait 2.1.3.2__tar.gz → 2.2.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.
- aait-2.2.1/PKG-INFO +9 -0
- aait-2.2.1/aait.egg-info/PKG-INFO +9 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/SOURCES.txt +1 -11
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/MetManagement.py +3 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/windows_utils.py +14 -12
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWInputSelector.py +62 -20
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/ow_in_or_out_path.ui +29 -6
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owemptyswitch.svg +8 -8
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owfilesyncchecker.svg +45 -45
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_en_fr.svg +27 -27
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_helsinki_fr_en.svg +27 -27
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_en.svg +27 -27
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_spacymd_fr.svg +27 -27
- {aait-2.1.3.2 → aait-2.2.1}/setup.py +1 -1
- aait-2.1.3.2/PKG-INFO +0 -28
- aait-2.1.3.2/aait.egg-info/PKG-INFO +0 -28
- aait-2.1.3.2/tests/test_class_values_context_handler.py +0 -75
- aait-2.1.3.2/tests/test_credentials.py +0 -76
- aait-2.1.3.2/tests/test_domain_context_handler.py +0 -401
- aait-2.1.3.2/tests/test_gui.py +0 -140
- aait-2.1.3.2/tests/test_matplotlib_export.py +0 -43
- aait-2.1.3.2/tests/test_perfect_domain_context_handler.py +0 -148
- aait-2.1.3.2/tests/test_scatterplot_density.py +0 -59
- aait-2.1.3.2/tests/test_settings_handler.py +0 -27
- aait-2.1.3.2/tests/test_widgets_outputs.py +0 -29
- aait-2.1.3.2/tests/test_workflows.py +0 -80
- {aait-2.1.3.2 → aait-2.2.1}/License.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/dependency_links.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/entry_points.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/namespace_packages.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/requires.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/aait.egg-info/top_level.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/SignalReceiver.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/audit_widget.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (2).TIF +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (3).TIF +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/00079473A - Copie (4).TIF +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0001.csv +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0002.csv +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dataTests/Tir 81mm_0003.csv +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/dynamic_results.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/test_all_widgets.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/test_server.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_4all.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_chunking.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_edit_table.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_mpnet_create_embeddings.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_optimisation.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_optimisationselection.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_powfactory.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_queryllm.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_spacy_md_fr_lemmatizer.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widget_traduction.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/audit_widget/widgets_model.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/encapsulation/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/fix_torch/fix_torch_dll_error.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/fix_torch/libomp140.x86_64.dll +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/MergeBaseLora.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/SERV_kill_workflow.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/SERV_requests.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/SERV_start_workflow.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/Tutorial_Finetuning.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/Tutorial_TestFinetuning.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/answers.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/chunking.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/embeddings.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/finetuning.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/functions_DatasetGeneration.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/functions_Finetuning.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/lemmes.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/lmstudio.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/main_DatasetGeneration.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/main_Finetuning.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/process_documents.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/prompt_management.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/quickpy.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/test.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/test_functions.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/llm/translations.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/optimiser/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/optimiser/optuna_multi.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/CheckMetaData.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/SimpleDialogQt.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/aait_repo_file.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/check_data_in.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/delta_local_shared_fodler.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/import_uic.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/initialize_from_ini.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/mac_utils.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/shared_functions.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/shared_variables.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/subprocess_management.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/thread_management.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/tools/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/tools/change_owcorpus.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/tools/concat_splitted_pypi.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/tools/first_time_check.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/utils/tools/owcorpus_ok.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWAAITResourcesManager.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWAddColumns.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWApplyRules.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWCN2rule_view.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWChunking.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWConcatRules.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWConverseLLM.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWCreateEmbeddings.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWDisplayMD.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWEditTable.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWEmptySwitch.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWEndLoop.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWExecuteScript.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWExtraChunks.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWExtractTokens.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWFileMetadata.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWFileSyncChecker.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWFileWithPath.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWFindFilesFromDir.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWFusionNM.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWGenerateQuestions.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWGenerateSynthesis.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWGenerateWord.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWKeywordsDetection.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWLMStudio.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWLanguageDetection.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWLemmatizer.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_CE_MiniLML6.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Falcon.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_HelsinkiEnFr.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_HelsinkiFrEn.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_MPNET.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Mistral.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen1B5_Q6.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen2_5_32B.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen3B_Q4.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q4.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Qwen7B_Q6.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_Solar.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_SolarUncensored.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_EN.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWModel_SpacyMD_FR.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWOptimisation.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWOptimisationSelection.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWOptimisationSendScore.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWProcessDocumentsFromPath.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWQueryLLM.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWRandomData.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWReranking.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWSaveFilepathEntry.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWSelectColumnDynamique.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWSelectRowsDynamic.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWStartLoop.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWTable2Corpus.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWTranslation.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWTrigger.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/OWUnzipFolder.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/POW_Wfactory.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owMarkdown.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/ow_widget_random_data.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owaddcolumns.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owapplyrules.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owchunking.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owconcatrules.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owconversellm.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owembeddings.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owemptyswitch.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owendloop.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owexecutescript.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owextrachunks.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owextracttokens.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owfilemetadata.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owfilesyncchecker.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owfilewithpath.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owfindfilesfromdir.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owfusion_nm.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owgenerate_word.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owgeneratequestions.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owgeneratesynthesis.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owkeyword.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owkeywordsdetection.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owlangdetect.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owlemmatizer.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owloadworkflow.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_ce_minilml6.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_falcon.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_en_fr.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_helsinki_fr_en.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_mistral.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_mpnet.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_2.5_32b.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_1.5b_q6.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_3b_q4.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q4.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwen_instruct_7b_q6.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_qwencoder_7b.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_solar.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_solar_uncensored.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_en.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owmodel_spacymd_fr.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/ownumberpointinrules.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owprocessdocuments.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owqueryllm.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owreranking.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owsavewithpath.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owselect_column_dynamic.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owselect_row_dynamic.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owstartloop.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owtable2corpus.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owtranslation.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owtrigger.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/designer/owunzipfolder.ui +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/CN2RuleViewer.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/MDViewer.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/Mistral.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/apply_rules.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/category.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/dark_green.txt +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/de.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/document_generator.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/documents.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/endloop.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/extra_chunks.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/in_or_out.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/input.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/languages.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/lm_studio.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/local_interf_img_multi_pull.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/local_interf_multi_pull.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/local_interf_pull.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/local_interf_push.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/local_interf_text_pull.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/logo_solar.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/logo_uncensoredsolar.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/logo_upload.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/models.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/optimisation.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/optimizer.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/output.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owCN2_intersect_rules.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owchunking.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owconversellm.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owedittable.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owembeddings.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owenvinfo.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owexecutescript.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owextracttokens.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owfilemetadata.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owfilesfromdir.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owfilewithpath.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owfusion_nm.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owgeneratequestions.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owgeneratesynthesis.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owkeywordsdetection.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owlemmatizer.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_ce_minilml6.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_falcon.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owmodel_mpnet.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owoptimisation.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owoptimisationselection.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owqueryllm.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owreranking.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owsavefilepathentry.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owselectcolumndynamique.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owtable2corpus.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owtranslation.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/owtrigger.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/processdocuments.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/qwen-color.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/select_dynamic_row.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/startloop.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/tools.png +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/widgetFactory.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/AAIT/widgets/icons/zip.svg +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/orangecontrib/__init__.py +0 -0
- {aait-2.1.3.2 → aait-2.2.1}/setup.cfg +0 -0
aait-2.2.1/PKG-INFO
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aait
|
|
3
|
+
Version: 2.2.1
|
|
4
|
+
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
+
Home-page:
|
|
6
|
+
Author: Orange community
|
|
7
|
+
Author-email:
|
|
8
|
+
Keywords: orange3 add-on
|
|
9
|
+
License-File: License.txt
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aait
|
|
3
|
+
Version: 2.2.1
|
|
4
|
+
Summary: Advanced Artificial Intelligence Tools is a package meant to develop and enable advanced AI functionalities in Orange
|
|
5
|
+
Home-page:
|
|
6
|
+
Author: Orange community
|
|
7
|
+
Author-email:
|
|
8
|
+
Keywords: orange3 add-on
|
|
9
|
+
License-File: License.txt
|
|
@@ -264,14 +264,4 @@ orangecontrib/AAIT/widgets/icons/select_dynamic_row.png
|
|
|
264
264
|
orangecontrib/AAIT/widgets/icons/startloop.png
|
|
265
265
|
orangecontrib/AAIT/widgets/icons/tools.png
|
|
266
266
|
orangecontrib/AAIT/widgets/icons/widgetFactory.svg
|
|
267
|
-
orangecontrib/AAIT/widgets/icons/zip.svg
|
|
268
|
-
tests/test_class_values_context_handler.py
|
|
269
|
-
tests/test_credentials.py
|
|
270
|
-
tests/test_domain_context_handler.py
|
|
271
|
-
tests/test_gui.py
|
|
272
|
-
tests/test_matplotlib_export.py
|
|
273
|
-
tests/test_perfect_domain_context_handler.py
|
|
274
|
-
tests/test_scatterplot_density.py
|
|
275
|
-
tests/test_settings_handler.py
|
|
276
|
-
tests/test_widgets_outputs.py
|
|
277
|
-
tests/test_workflows.py
|
|
267
|
+
orangecontrib/AAIT/widgets/icons/zip.svg
|
|
@@ -1361,6 +1361,7 @@ def write_file_time(path):
|
|
|
1361
1361
|
reset_files([time_ok])
|
|
1362
1362
|
with open(path, "w") as f:
|
|
1363
1363
|
f.write(str(time))
|
|
1364
|
+
f.flush()
|
|
1364
1365
|
try:
|
|
1365
1366
|
with open(time_ok, "w"):
|
|
1366
1367
|
pass
|
|
@@ -1377,6 +1378,8 @@ def read_file_time(path):
|
|
|
1377
1378
|
return 0 # time out
|
|
1378
1379
|
with open(path, "r") as f:
|
|
1379
1380
|
content = f.read()
|
|
1381
|
+
if content.isdigit()==False:
|
|
1382
|
+
return int(get_second_from_1970()) # en cas d'erreur on renvoie le temps actuel
|
|
1380
1383
|
return int(content)
|
|
1381
1384
|
|
|
1382
1385
|
def generate_unique_id_from_mac_timestamp():
|
|
@@ -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
|
|
|
@@ -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>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
2
|
-
<svg width="800px" height="800px" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
-
<rect width="48" height="48" fill="white" fill-opacity="0.01"/>
|
|
4
|
-
<path d="M40 4V18L8 30L8 44" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
-
<path d="M8 22V17" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
-
<path d="M8 9V4" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
-
<path d="M40 44V39" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
8
|
-
<path d="M40 31V26" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
2
|
+
<svg width="800px" height="800px" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<rect width="48" height="48" fill="white" fill-opacity="0.01"/>
|
|
4
|
+
<path d="M40 4V18L8 30L8 44" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M8 22V17" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
<path d="M8 9V4" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
+
<path d="M40 44V39" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
8
|
+
<path d="M40 31V26" stroke="#000000" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
9
9
|
</svg>
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
<?xml version="1.0" standalone="no"?>
|
|
2
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
|
3
|
-
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
|
4
|
-
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
|
5
|
-
width="982.000000pt" height="913.000000pt" viewBox="0 0 982.000000 913.000000"
|
|
6
|
-
preserveAspectRatio="xMidYMid meet">
|
|
7
|
-
|
|
8
|
-
<g transform="translate(0.000000,913.000000) scale(0.100000,-0.100000)"
|
|
9
|
-
fill="#000000" stroke="none">
|
|
10
|
-
<path d="M2360 8869 c-974 -9 -1334 -20 -1397 -43 -55 -19 -148 -78 -196 -125
|
|
11
|
-
-56 -52 -122 -147 -157 -225 l-30 -68 0 -2711 0 -2712 50 -85 c89 -148 247
|
|
12
|
-
-284 365 -310 72 -16 665 -29 1356 -30 l596 0 7 -552 c4 -304 11 -582 16 -618
|
|
13
|
-
14 -102 78 -219 170 -311 60 -60 96 -86 177 -127 l101 -52 1102 0 1102 0 116
|
|
14
|
-
-101 c174 -151 278 -221 472 -318 350 -175 599 -233 1000 -234 333 -1 566 40
|
|
15
|
-
814 144 445 186 778 457 1029 839 484 738 459 1700 -64 2435 -175 247 -427
|
|
16
|
-
467 -761 666 l-57 34 -1 455 c-1 536 -6 618 -49 704 -42 85 -197 251 -583 622
|
|
17
|
-
-590 568 -691 658 -763 680 -59 18 -404 33 -752 34 l-233 0 0 243 c0 133 -5
|
|
18
|
-
285 -10 337 -9 84 -14 101 -44 144 -113 162 -1085 1116 -1265 1240 -20 14 -59
|
|
19
|
-
31 -86 37 -67 15 -938 19 -2025 8z m1754 -811 c4 -271 11 -445 19 -483 21
|
|
20
|
-
-102 118 -224 229 -289 67 -39 157 -45 631 -46 l397 0 0 -189 0 -189 -1007 -7
|
|
21
|
-
-1008 -7 -80 -46 c-107 -61 -227 -181 -278 -280 l-38 -73 -10 -227 c-5 -125
|
|
22
|
-
-12 -910 -15 -1744 l-7 -1518 -942 0 -941 0 -47 48 -47 48 0 2519 c0 1420 4
|
|
23
|
-
2581 9 2659 10 149 16 167 75 210 27 21 41 21 664 26 350 3 1031 7 1513 8
|
|
24
|
-
l876 2 7 -422z m805 -191 l213 -215 -249 -7 c-138 -4 -264 -4 -280 -1 -17 4
|
|
25
|
-
-39 16 -49 28 -17 18 -19 44 -22 296 l-3 275 88 -81 c48 -44 184 -177 302
|
|
26
|
-
-295z m1591 -1609 c1 -319 16 -657 31 -698 24 -66 90 -168 137 -212 26 -25 79
|
|
27
|
-
-60 116 -78 91 -43 169 -49 619 -50 l357 0 0 -351 0 -351 -27 6 c-190 40 -285
|
|
28
|
-
49 -528 49 -189 0 -278 -4 -365 -17 -352 -54 -655 -186 -965 -419 -102 -77
|
|
29
|
-
-312 -288 -392 -392 -301 -398 -453 -843 -453 -1331 0 -352 58 -610 214 -957
|
|
30
|
-
40 -89 72 -165 70 -169 -2 -3 -421 -4 -930 -1 l-925 6 -54 56 -55 56 1 2290
|
|
31
|
-
c0 1260 4 2377 8 2483 l8 193 34 35 c19 20 43 41 54 47 26 15 625 22 2008 25
|
|
32
|
-
l1037 2 0 -222z m845 -477 l160 -161 -225 1 c-124 1 -252 4 -285 8 l-60 6 -7
|
|
33
|
-
40 c-4 22 -10 150 -14 285 l-7 245 139 -132 c76 -72 211 -204 299 -292z m170
|
|
34
|
-
-1621 c401 -79 764 -286 1019 -581 297 -344 446 -733 446 -1163 0 -276 -50
|
|
35
|
-
-517 -156 -743 -206 -444 -570 -768 -1064 -946 -190 -68 -223 -72 -560 -72
|
|
36
|
-
-285 1 -298 1 -400 27 -216 54 -440 157 -616 280 -101 72 -289 249 -376 356
|
|
37
|
-
-198 241 -319 531 -359 855 -16 138 -6 443 19 567 57 276 151 496 302 705 299
|
|
38
|
-
415 735 670 1260 739 89 11 377 -3 485 -24z"/>
|
|
39
|
-
<path d="M8035 3221 c-44 -21 -134 -111 -401 -401 -235 -256 -579 -622 -642
|
|
40
|
-
-683 l-49 -48 -74 59 c-41 33 -156 139 -256 236 -226 218 -250 236 -314 236
|
|
41
|
-
-117 0 -188 -76 -189 -202 0 -51 4 -61 44 -115 47 -61 528 -544 629 -632 72
|
|
42
|
-
-61 133 -78 224 -62 70 13 62 6 412 381 357 382 779 853 855 955 36 47 38 52
|
|
43
|
-
34 115 -3 54 -9 72 -33 104 -54 72 -157 96 -240 57z"/>
|
|
44
|
-
</g>
|
|
45
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
|
3
|
+
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
|
4
|
+
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
|
5
|
+
width="982.000000pt" height="913.000000pt" viewBox="0 0 982.000000 913.000000"
|
|
6
|
+
preserveAspectRatio="xMidYMid meet">
|
|
7
|
+
|
|
8
|
+
<g transform="translate(0.000000,913.000000) scale(0.100000,-0.100000)"
|
|
9
|
+
fill="#000000" stroke="none">
|
|
10
|
+
<path d="M2360 8869 c-974 -9 -1334 -20 -1397 -43 -55 -19 -148 -78 -196 -125
|
|
11
|
+
-56 -52 -122 -147 -157 -225 l-30 -68 0 -2711 0 -2712 50 -85 c89 -148 247
|
|
12
|
+
-284 365 -310 72 -16 665 -29 1356 -30 l596 0 7 -552 c4 -304 11 -582 16 -618
|
|
13
|
+
14 -102 78 -219 170 -311 60 -60 96 -86 177 -127 l101 -52 1102 0 1102 0 116
|
|
14
|
+
-101 c174 -151 278 -221 472 -318 350 -175 599 -233 1000 -234 333 -1 566 40
|
|
15
|
+
814 144 445 186 778 457 1029 839 484 738 459 1700 -64 2435 -175 247 -427
|
|
16
|
+
467 -761 666 l-57 34 -1 455 c-1 536 -6 618 -49 704 -42 85 -197 251 -583 622
|
|
17
|
+
-590 568 -691 658 -763 680 -59 18 -404 33 -752 34 l-233 0 0 243 c0 133 -5
|
|
18
|
+
285 -10 337 -9 84 -14 101 -44 144 -113 162 -1085 1116 -1265 1240 -20 14 -59
|
|
19
|
+
31 -86 37 -67 15 -938 19 -2025 8z m1754 -811 c4 -271 11 -445 19 -483 21
|
|
20
|
+
-102 118 -224 229 -289 67 -39 157 -45 631 -46 l397 0 0 -189 0 -189 -1007 -7
|
|
21
|
+
-1008 -7 -80 -46 c-107 -61 -227 -181 -278 -280 l-38 -73 -10 -227 c-5 -125
|
|
22
|
+
-12 -910 -15 -1744 l-7 -1518 -942 0 -941 0 -47 48 -47 48 0 2519 c0 1420 4
|
|
23
|
+
2581 9 2659 10 149 16 167 75 210 27 21 41 21 664 26 350 3 1031 7 1513 8
|
|
24
|
+
l876 2 7 -422z m805 -191 l213 -215 -249 -7 c-138 -4 -264 -4 -280 -1 -17 4
|
|
25
|
+
-39 16 -49 28 -17 18 -19 44 -22 296 l-3 275 88 -81 c48 -44 184 -177 302
|
|
26
|
+
-295z m1591 -1609 c1 -319 16 -657 31 -698 24 -66 90 -168 137 -212 26 -25 79
|
|
27
|
+
-60 116 -78 91 -43 169 -49 619 -50 l357 0 0 -351 0 -351 -27 6 c-190 40 -285
|
|
28
|
+
49 -528 49 -189 0 -278 -4 -365 -17 -352 -54 -655 -186 -965 -419 -102 -77
|
|
29
|
+
-312 -288 -392 -392 -301 -398 -453 -843 -453 -1331 0 -352 58 -610 214 -957
|
|
30
|
+
40 -89 72 -165 70 -169 -2 -3 -421 -4 -930 -1 l-925 6 -54 56 -55 56 1 2290
|
|
31
|
+
c0 1260 4 2377 8 2483 l8 193 34 35 c19 20 43 41 54 47 26 15 625 22 2008 25
|
|
32
|
+
l1037 2 0 -222z m845 -477 l160 -161 -225 1 c-124 1 -252 4 -285 8 l-60 6 -7
|
|
33
|
+
40 c-4 22 -10 150 -14 285 l-7 245 139 -132 c76 -72 211 -204 299 -292z m170
|
|
34
|
+
-1621 c401 -79 764 -286 1019 -581 297 -344 446 -733 446 -1163 0 -276 -50
|
|
35
|
+
-517 -156 -743 -206 -444 -570 -768 -1064 -946 -190 -68 -223 -72 -560 -72
|
|
36
|
+
-285 1 -298 1 -400 27 -216 54 -440 157 -616 280 -101 72 -289 249 -376 356
|
|
37
|
+
-198 241 -319 531 -359 855 -16 138 -6 443 19 567 57 276 151 496 302 705 299
|
|
38
|
+
415 735 670 1260 739 89 11 377 -3 485 -24z"/>
|
|
39
|
+
<path d="M8035 3221 c-44 -21 -134 -111 -401 -401 -235 -256 -579 -622 -642
|
|
40
|
+
-683 l-49 -48 -74 59 c-41 33 -156 139 -256 236 -226 218 -250 236 -314 236
|
|
41
|
+
-117 0 -188 -76 -189 -202 0 -51 4 -61 44 -115 47 -61 528 -544 629 -632 72
|
|
42
|
+
-61 133 -78 224 -62 70 13 62 6 412 381 357 382 779 853 855 955 36 47 38 52
|
|
43
|
+
34 115 -3 54 -9 72 -33 104 -54 72 -157 96 -240 57z"/>
|
|
44
|
+
</g>
|
|
45
|
+
</svg>
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Modified SVG -->
|
|
3
|
-
<svg fill="#000000" width="900px" height="900px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
|
|
4
|
-
<defs>
|
|
5
|
-
<style>
|
|
6
|
-
.cls-1 {
|
|
7
|
-
fill: none;
|
|
8
|
-
}
|
|
9
|
-
.text-style {
|
|
10
|
-
font-size: 4px; /* Adjust size to fit */
|
|
11
|
-
fill: #000000; /* Text color */
|
|
12
|
-
text-anchor: middle; /* Center align text */
|
|
13
|
-
}
|
|
14
|
-
</style>
|
|
15
|
-
</defs>
|
|
16
|
-
|
|
17
|
-
<!-- Grouping icon paths and moving it upward with transform -->
|
|
18
|
-
<g transform="translate(2.5, 2) scale(0.8)"> <!-- Adjust the Y-axis value to move it upward -->
|
|
19
|
-
<path d="M27,24a2.9609,2.9609,0,0,0-1.2854.3008L21.4141,20H18v2h2.5859l3.7146,3.7148A2.9665,2.9665,0,0,0,24,27a3,3,0,1,0,3-3Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,28Z"/>
|
|
20
|
-
<path d="M27,13a2.9948,2.9948,0,0,0-2.8157,2H18v2h6.1843A2.9947,2.9947,0,1,0,27,13Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,17Z"/>
|
|
21
|
-
<path d="M27,2a3.0033,3.0033,0,0,0-3,3,2.9657,2.9657,0,0,0,.3481,1.373L20.5957,10H18v2h3.4043l4.3989-4.2524A2.9987,2.9987,0,1,0,27,2Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,6Z"/>
|
|
22
|
-
<path d="M18,6h2V4H18a3.9756,3.9756,0,0,0-3,1.3823A3.9756,3.9756,0,0,0,12,4H11a9.01,9.01,0,0,0-9,9v6a9.01,9.01,0,0,0,9,9h1a3.9756,3.9756,0,0,0,3-1.3823A3.9756,3.9756,0,0,0,18,28h2V26H18a2.0023,2.0023,0,0,1-2-2V8A2.0023,2.0023,0,0,1,18,6ZM12,26H11a7.0047,7.0047,0,0,1-6.92-6H6V18H4V14H7a3.0033,3.0033,0,0,0,3-3V9H8v2a1.0009,1.0009,0,0,1-1,1H4.08A7.0047,7.0047,0,0,1,11,6h1a2.0023,2.0023,0,0,1,2,2v4H12v2h2v4H12a3.0033,3.0033,0,0,0-3,3v2h2V21a1.0009,1.0009,0,0,1,1-1h2v4A2.0023,2.0023,0,0,1,12,26Z"/>
|
|
23
|
-
</g>
|
|
24
|
-
|
|
25
|
-
<!-- Text under the icon -->
|
|
26
|
-
<text x="16" y="30" class="text-style">Helsinki EN-FR</text>
|
|
27
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Modified SVG -->
|
|
3
|
+
<svg fill="#000000" width="900px" height="900px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
|
|
4
|
+
<defs>
|
|
5
|
+
<style>
|
|
6
|
+
.cls-1 {
|
|
7
|
+
fill: none;
|
|
8
|
+
}
|
|
9
|
+
.text-style {
|
|
10
|
+
font-size: 4px; /* Adjust size to fit */
|
|
11
|
+
fill: #000000; /* Text color */
|
|
12
|
+
text-anchor: middle; /* Center align text */
|
|
13
|
+
}
|
|
14
|
+
</style>
|
|
15
|
+
</defs>
|
|
16
|
+
|
|
17
|
+
<!-- Grouping icon paths and moving it upward with transform -->
|
|
18
|
+
<g transform="translate(2.5, 2) scale(0.8)"> <!-- Adjust the Y-axis value to move it upward -->
|
|
19
|
+
<path d="M27,24a2.9609,2.9609,0,0,0-1.2854.3008L21.4141,20H18v2h2.5859l3.7146,3.7148A2.9665,2.9665,0,0,0,24,27a3,3,0,1,0,3-3Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,28Z"/>
|
|
20
|
+
<path d="M27,13a2.9948,2.9948,0,0,0-2.8157,2H18v2h6.1843A2.9947,2.9947,0,1,0,27,13Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,17Z"/>
|
|
21
|
+
<path d="M27,2a3.0033,3.0033,0,0,0-3,3,2.9657,2.9657,0,0,0,.3481,1.373L20.5957,10H18v2h3.4043l4.3989-4.2524A2.9987,2.9987,0,1,0,27,2Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,6Z"/>
|
|
22
|
+
<path d="M18,6h2V4H18a3.9756,3.9756,0,0,0-3,1.3823A3.9756,3.9756,0,0,0,12,4H11a9.01,9.01,0,0,0-9,9v6a9.01,9.01,0,0,0,9,9h1a3.9756,3.9756,0,0,0,3-1.3823A3.9756,3.9756,0,0,0,18,28h2V26H18a2.0023,2.0023,0,0,1-2-2V8A2.0023,2.0023,0,0,1,18,6ZM12,26H11a7.0047,7.0047,0,0,1-6.92-6H6V18H4V14H7a3.0033,3.0033,0,0,0,3-3V9H8v2a1.0009,1.0009,0,0,1-1,1H4.08A7.0047,7.0047,0,0,1,11,6h1a2.0023,2.0023,0,0,1,2,2v4H12v2h2v4H12a3.0033,3.0033,0,0,0-3,3v2h2V21a1.0009,1.0009,0,0,1,1-1h2v4A2.0023,2.0023,0,0,1,12,26Z"/>
|
|
23
|
+
</g>
|
|
24
|
+
|
|
25
|
+
<!-- Text under the icon -->
|
|
26
|
+
<text x="16" y="30" class="text-style">Helsinki EN-FR</text>
|
|
27
|
+
</svg>
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Modified SVG -->
|
|
3
|
-
<svg fill="#000000" width="900px" height="900px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
|
|
4
|
-
<defs>
|
|
5
|
-
<style>
|
|
6
|
-
.cls-1 {
|
|
7
|
-
fill: none;
|
|
8
|
-
}
|
|
9
|
-
.text-style {
|
|
10
|
-
font-size: 4px; /* Adjust size to fit */
|
|
11
|
-
fill: #000000; /* Text color */
|
|
12
|
-
text-anchor: middle; /* Center align text */
|
|
13
|
-
}
|
|
14
|
-
</style>
|
|
15
|
-
</defs>
|
|
16
|
-
|
|
17
|
-
<!-- Grouping icon paths and moving it upward with transform -->
|
|
18
|
-
<g transform="translate(2.5, 2) scale(0.8)"> <!-- Adjust the Y-axis value to move it upward -->
|
|
19
|
-
<path d="M27,24a2.9609,2.9609,0,0,0-1.2854.3008L21.4141,20H18v2h2.5859l3.7146,3.7148A2.9665,2.9665,0,0,0,24,27a3,3,0,1,0,3-3Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,28Z"/>
|
|
20
|
-
<path d="M27,13a2.9948,2.9948,0,0,0-2.8157,2H18v2h6.1843A2.9947,2.9947,0,1,0,27,13Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,17Z"/>
|
|
21
|
-
<path d="M27,2a3.0033,3.0033,0,0,0-3,3,2.9657,2.9657,0,0,0,.3481,1.373L20.5957,10H18v2h3.4043l4.3989-4.2524A2.9987,2.9987,0,1,0,27,2Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,6Z"/>
|
|
22
|
-
<path d="M18,6h2V4H18a3.9756,3.9756,0,0,0-3,1.3823A3.9756,3.9756,0,0,0,12,4H11a9.01,9.01,0,0,0-9,9v6a9.01,9.01,0,0,0,9,9h1a3.9756,3.9756,0,0,0,3-1.3823A3.9756,3.9756,0,0,0,18,28h2V26H18a2.0023,2.0023,0,0,1-2-2V8A2.0023,2.0023,0,0,1,18,6ZM12,26H11a7.0047,7.0047,0,0,1-6.92-6H6V18H4V14H7a3.0033,3.0033,0,0,0,3-3V9H8v2a1.0009,1.0009,0,0,1-1,1H4.08A7.0047,7.0047,0,0,1,11,6h1a2.0023,2.0023,0,0,1,2,2v4H12v2h2v4H12a3.0033,3.0033,0,0,0-3,3v2h2V21a1.0009,1.0009,0,0,1,1-1h2v4A2.0023,2.0023,0,0,1,12,26Z"/>
|
|
23
|
-
</g>
|
|
24
|
-
|
|
25
|
-
<!-- Text under the icon -->
|
|
26
|
-
<text x="16" y="30" class="text-style">Helsinki FR-EN</text>
|
|
27
|
-
</svg>
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Modified SVG -->
|
|
3
|
+
<svg fill="#000000" width="900px" height="900px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
|
|
4
|
+
<defs>
|
|
5
|
+
<style>
|
|
6
|
+
.cls-1 {
|
|
7
|
+
fill: none;
|
|
8
|
+
}
|
|
9
|
+
.text-style {
|
|
10
|
+
font-size: 4px; /* Adjust size to fit */
|
|
11
|
+
fill: #000000; /* Text color */
|
|
12
|
+
text-anchor: middle; /* Center align text */
|
|
13
|
+
}
|
|
14
|
+
</style>
|
|
15
|
+
</defs>
|
|
16
|
+
|
|
17
|
+
<!-- Grouping icon paths and moving it upward with transform -->
|
|
18
|
+
<g transform="translate(2.5, 2) scale(0.8)"> <!-- Adjust the Y-axis value to move it upward -->
|
|
19
|
+
<path d="M27,24a2.9609,2.9609,0,0,0-1.2854.3008L21.4141,20H18v2h2.5859l3.7146,3.7148A2.9665,2.9665,0,0,0,24,27a3,3,0,1,0,3-3Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,28Z"/>
|
|
20
|
+
<path d="M27,13a2.9948,2.9948,0,0,0-2.8157,2H18v2h6.1843A2.9947,2.9947,0,1,0,27,13Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,17Z"/>
|
|
21
|
+
<path d="M27,2a3.0033,3.0033,0,0,0-3,3,2.9657,2.9657,0,0,0,.3481,1.373L20.5957,10H18v2h3.4043l4.3989-4.2524A2.9987,2.9987,0,1,0,27,2Zm0,4a1,1,0,1,1,1-1A1.0009,1.0009,0,0,1,27,6Z"/>
|
|
22
|
+
<path d="M18,6h2V4H18a3.9756,3.9756,0,0,0-3,1.3823A3.9756,3.9756,0,0,0,12,4H11a9.01,9.01,0,0,0-9,9v6a9.01,9.01,0,0,0,9,9h1a3.9756,3.9756,0,0,0,3-1.3823A3.9756,3.9756,0,0,0,18,28h2V26H18a2.0023,2.0023,0,0,1-2-2V8A2.0023,2.0023,0,0,1,18,6ZM12,26H11a7.0047,7.0047,0,0,1-6.92-6H6V18H4V14H7a3.0033,3.0033,0,0,0,3-3V9H8v2a1.0009,1.0009,0,0,1-1,1H4.08A7.0047,7.0047,0,0,1,11,6h1a2.0023,2.0023,0,0,1,2,2v4H12v2h2v4H12a3.0033,3.0033,0,0,0-3,3v2h2V21a1.0009,1.0009,0,0,1,1-1h2v4A2.0023,2.0023,0,0,1,12,26Z"/>
|
|
23
|
+
</g>
|
|
24
|
+
|
|
25
|
+
<!-- Text under the icon -->
|
|
26
|
+
<text x="16" y="30" class="text-style">Helsinki FR-EN</text>
|
|
27
|
+
</svg>
|