From 716dba76dad45d59743a94a8b6781b8a887aa058 Mon Sep 17 00:00:00 2001 From: stehu Date: Sun, 15 May 2022 08:40:18 +0000 Subject: [PATCH] Update Doxygen ref refs/heads/develop-2.0.8 on 2022-05-15 08:40:18 --- docs/html/CtxCheckTask_8h_source.html | 2 +- docs/html/FileReadTask_8h_source.html | 3 +- docs/html/GpgFrontendUIInit_8h_source.html | 2 +- docs/html/GpgFrontendUI_8h_source.html | 2 +- docs/html/KeyList_8h_source.html | 2 +- docs/html/KeyMgmt_8h_source.html | 8 +- docs/html/KeyPairOperaTab_8h_source.html | 4 +- docs/html/MainWindow_8h_source.html | 40 +- docs/html/SettingsAdvanced_8h_source.html | 56 +-- docs/html/TaskRunner_8h_source.html | 5 +- docs/html/Task_8h_source.html | 174 ++++++--- docs/html/ThreadingModel_8h_source.html | 110 ++++++ docs/html/UserInterfaceUtils_8h_source.html | 123 ++++--- docs/html/annotated.html | 6 +- ...end_1_1Thread_1_1CtxCheckTask-members.html | 36 +- ...GpgFrontend_1_1Thread_1_1CtxCheckTask.html | 57 +-- ...1_1Thread_1_1CtxCheckTask__coll__graph.map | 17 +- ...1_1Thread_1_1CtxCheckTask__coll__graph.md5 | 2 +- ...1_1Thread_1_1CtxCheckTask__coll__graph.png | Bin 19647 -> 100580 bytes ...Thread_1_1CtxCheckTask__inherit__graph.map | 4 +- ...Thread_1_1CtxCheckTask__inherit__graph.md5 | 2 +- ...Thread_1_1CtxCheckTask__inherit__graph.png | Bin 19647 -> 23138 bytes ...GpgFrontend_1_1Thread_1_1Task-members.html | 34 +- .../classGpgFrontend_1_1Thread_1_1Task.html | 223 +++++++++-- .../classGpgFrontend_1_1Thread_1_1Task.js | 17 +- ...ssGpgFrontend_1_1Thread_1_1TaskRunner.html | 28 +- ...rontend_1_1Thread_1_1TaskRunnerGetter.html | 40 +- ...hread_1_1TaskRunnerGetter__coll__graph.map | 40 +- ...hread_1_1TaskRunnerGetter__coll__graph.md5 | 2 +- ...hread_1_1TaskRunnerGetter__coll__graph.png | Bin 155332 -> 257389 bytes ...d_1_1Thread_1_1TaskRunner__coll__graph.map | 26 +- ...d_1_1Thread_1_1TaskRunner__coll__graph.md5 | 2 +- ...d_1_1Thread_1_1TaskRunner__coll__graph.png | Bin 40955 -> 132796 bytes ...1Thread_1_1Task_1_1DataObject-members.html | 110 ++++++ ...ntend_1_1Thread_1_1Task_1_1DataObject.html | 347 +++++++++++++++++ ...rontend_1_1Thread_1_1Task_1_1DataObject.js | 11 + ...ead_1_1Task_1_1DataObject__coll__graph.map | 7 + ...ead_1_1Task_1_1DataObject__coll__graph.md5 | 1 + ...ead_1_1Task_1_1DataObject__coll__graph.png | Bin 0 -> 32078 bytes ...rontend_1_1Thread_1_1Task__coll__graph.map | 15 +- ...rontend_1_1Thread_1_1Task__coll__graph.md5 | 2 +- ...rontend_1_1Thread_1_1Task__coll__graph.png | Bin 13889 -> 93685 bytes ...tend_1_1Thread_1_1Task__inherit__graph.map | 6 +- ...tend_1_1Thread_1_1Task__inherit__graph.md5 | 2 +- ...tend_1_1Thread_1_1Task__inherit__graph.png | Bin 26924 -> 34196 bytes ...rontend_1_1UI_1_1FileReadTask-members.html | 48 +-- ...lassGpgFrontend_1_1UI_1_1FileReadTask.html | 59 +-- ...end_1_1UI_1_1FileReadTask__coll__graph.map | 17 +- ...end_1_1UI_1_1FileReadTask__coll__graph.md5 | 2 +- ...end_1_1UI_1_1FileReadTask__coll__graph.png | Bin 21804 -> 91415 bytes ..._1_1UI_1_1FileReadTask__inherit__graph.map | 4 +- ..._1_1UI_1_1FileReadTask__inherit__graph.md5 | 2 +- ..._1_1UI_1_1FileReadTask__inherit__graph.png | Bin 21804 -> 25444 bytes .../classGpgFrontend_1_1UI_1_1MainWindow.html | 24 +- ...Frontend_1_1UI_1_1PlainTextEditorPage.html | 2 +- docs/html/classes.html | 188 +++++----- .../dir_fd71accbf528c1576ca21e7ec5716833.js | 3 +- docs/html/files.html | 135 +++---- docs/html/functions_a.html | 3 + docs/html/functions_f.html | 3 + docs/html/functions_func.html | 3 + docs/html/functions_func_f.html | 3 + docs/html/functions_func_g.html | 26 +- docs/html/functions_func_p.html | 3 + docs/html/functions_func_s.html | 8 +- docs/html/functions_func_t.html | 2 +- docs/html/functions_func_~.html | 3 + docs/html/functions_g.html | 26 +- docs/html/functions_p.html | 3 + docs/html/functions_s.html | 10 +- docs/html/functions_t.html | 2 +- docs/html/functions_~.html | 3 + docs/html/hierarchy.html | 194 +++++----- docs/html/hierarchy.js | 2 + docs/html/inherit_graph_28.map | 6 +- docs/html/inherit_graph_28.md5 | 2 +- docs/html/inherit_graph_28.png | Bin 16386 -> 2835 bytes docs/html/inherit_graph_29.map | 19 +- docs/html/inherit_graph_29.md5 | 2 +- docs/html/inherit_graph_29.png | Bin 89399 -> 3783 bytes docs/html/inherit_graph_30.map | 27 +- docs/html/inherit_graph_30.md5 | 2 +- docs/html/inherit_graph_30.png | Bin 115132 -> 16386 bytes docs/html/inherit_graph_31.map | 23 +- docs/html/inherit_graph_31.md5 | 2 +- docs/html/inherit_graph_31.png | Bin 14006 -> 89399 bytes docs/html/inherit_graph_32.map | 23 +- docs/html/inherit_graph_32.md5 | 2 +- docs/html/inherit_graph_32.png | Bin 2676 -> 115132 bytes docs/html/inherit_graph_33.map | 6 +- docs/html/inherit_graph_33.md5 | 2 +- docs/html/inherit_graph_33.png | Bin 2493 -> 14006 bytes docs/html/inherit_graph_34.map | 2 +- docs/html/inherit_graph_34.md5 | 2 +- docs/html/inherit_graph_34.png | Bin 2651 -> 2676 bytes docs/html/inherit_graph_35.map | 4 +- docs/html/inherit_graph_35.md5 | 2 +- docs/html/inherit_graph_35.png | Bin 6297 -> 2493 bytes docs/html/inherit_graph_36.map | 2 +- docs/html/inherit_graph_36.md5 | 2 +- docs/html/inherit_graph_36.png | Bin 2197 -> 2651 bytes docs/html/inherit_graph_37.map | 4 +- docs/html/inherit_graph_37.md5 | 2 +- docs/html/inherit_graph_37.png | Bin 3219 -> 6297 bytes docs/html/inherit_graph_38.map | 3 +- docs/html/inherit_graph_38.md5 | 2 +- docs/html/inherit_graph_38.png | Bin 3524 -> 2197 bytes docs/html/inherit_graph_39.map | 2 +- docs/html/inherit_graph_39.md5 | 2 +- docs/html/inherit_graph_39.png | Bin 3140 -> 3219 bytes docs/html/inherit_graph_40.map | 4 +- docs/html/inherit_graph_40.md5 | 2 +- docs/html/inherit_graph_40.png | Bin 4811 -> 3524 bytes docs/html/inherit_graph_41.map | 3 +- docs/html/inherit_graph_41.md5 | 2 +- docs/html/inherit_graph_41.png | Bin 2949 -> 3140 bytes docs/html/inherit_graph_42.map | 3 +- docs/html/inherit_graph_42.md5 | 2 +- docs/html/inherit_graph_42.png | Bin 2160 -> 4811 bytes docs/html/inherit_graph_43.map | 3 +- docs/html/inherit_graph_43.md5 | 2 +- docs/html/inherit_graph_43.png | Bin 1988 -> 2949 bytes docs/html/inherit_graph_44.map | 3 + docs/html/inherit_graph_44.md5 | 1 + docs/html/inherit_graph_44.png | Bin 0 -> 2160 bytes docs/html/inherit_graph_45.map | 3 + docs/html/inherit_graph_45.md5 | 1 + docs/html/inherit_graph_45.png | Bin 0 -> 1988 bytes docs/html/inherits.html | 42 ++- docs/html/namespaceGpgFrontend_1_1UI.html | 30 +- docs/html/namespacemembers.html | 2 +- docs/html/namespacemembers_func.html | 2 +- docs/html/navtreedata.js | 12 +- docs/html/navtreeindex0.js | 4 +- docs/html/navtreeindex1.js | 4 +- docs/html/navtreeindex2.js | 68 ++-- docs/html/navtreeindex3.js | 32 +- docs/html/navtreeindex4.js | 32 +- docs/html/navtreeindex5.js | 38 +- docs/html/navtreeindex6.js | 18 + docs/html/search/all_1.js | 13 +- docs/html/search/all_10.js | 6 +- docs/html/search/all_11.js | 36 +- docs/html/search/all_12.js | 348 +++++++++--------- docs/html/search/all_13.js | 30 +- docs/html/search/all_14.js | 14 +- docs/html/search/all_15.js | 16 +- docs/html/search/all_16.js | 12 +- docs/html/search/all_17.js | 4 +- docs/html/search/all_18.js | 19 +- docs/html/search/all_2.js | 8 +- docs/html/search/all_3.js | 126 +++---- docs/html/search/all_4.js | 36 +- docs/html/search/all_5.js | 48 +-- docs/html/search/all_6.js | 29 +- docs/html/search/all_7.js | 260 ++++++------- docs/html/search/all_8.js | 6 +- docs/html/search/all_9.js | 102 ++--- docs/html/search/all_a.js | 70 ++-- docs/html/search/all_b.js | 8 +- docs/html/search/all_c.js | 16 +- docs/html/search/all_d.js | 16 +- docs/html/search/all_e.js | 22 +- docs/html/search/all_f.js | 27 +- docs/html/search/classes_0.js | 8 +- docs/html/search/classes_1.js | 10 +- docs/html/search/classes_10.js | 14 +- docs/html/search/classes_11.js | 2 +- docs/html/search/classes_12.js | 6 +- docs/html/search/classes_13.js | 4 +- docs/html/search/classes_2.js | 18 +- docs/html/search/classes_3.js | 4 +- docs/html/search/classes_4.js | 2 +- docs/html/search/classes_5.js | 8 +- docs/html/search/classes_6.js | 58 +-- docs/html/search/classes_7.js | 2 +- docs/html/search/classes_8.js | 6 +- docs/html/search/classes_9.js | 42 +-- docs/html/search/classes_a.js | 2 +- docs/html/search/classes_b.js | 2 +- docs/html/search/classes_c.js | 2 +- docs/html/search/classes_d.js | 6 +- docs/html/search/classes_e.js | 2 +- docs/html/search/classes_f.js | 46 +-- docs/html/search/enums_0.js | 2 +- docs/html/search/functions_0.js | 2 +- docs/html/search/functions_1.js | 23 +- docs/html/search/functions_10.js | 2 +- docs/html/search/functions_11.js | 32 +- docs/html/search/functions_12.js | 288 ++++++++------- docs/html/search/functions_13.js | 20 +- docs/html/search/functions_14.js | 6 +- docs/html/search/functions_15.js | 12 +- docs/html/search/functions_16.js | 12 +- docs/html/search/functions_17.js | 19 +- docs/html/search/functions_2.js | 2 +- docs/html/search/functions_3.js | 86 ++--- docs/html/search/functions_4.js | 28 +- docs/html/search/functions_5.js | 26 +- docs/html/search/functions_6.js | 11 +- docs/html/search/functions_7.js | 240 ++++++------ docs/html/search/functions_8.js | 2 +- docs/html/search/functions_9.js | 90 ++--- docs/html/search/functions_a.js | 34 +- docs/html/search/functions_b.js | 6 +- docs/html/search/functions_c.js | 10 +- docs/html/search/functions_d.js | 10 +- docs/html/search/functions_e.js | 14 +- docs/html/search/functions_f.js | 21 +- docs/html/search/namespaces_0.js | 8 +- docs/html/search/pages_0.js | 2 +- docs/html/search/variables_0.js | 2 +- docs/html/search/variables_1.js | 32 +- docs/html/search/variables_10.js | 4 +- docs/html/search/variables_11.js | 24 +- docs/html/search/variables_12.js | 6 +- docs/html/search/variables_13.js | 8 +- docs/html/search/variables_14.js | 4 +- docs/html/search/variables_15.js | 4 +- docs/html/search/variables_2.js | 6 +- docs/html/search/variables_3.js | 32 +- docs/html/search/variables_4.js | 6 +- docs/html/search/variables_5.js | 22 +- docs/html/search/variables_6.js | 14 +- docs/html/search/variables_7.js | 2 +- docs/html/search/variables_8.js | 4 +- docs/html/search/variables_9.js | 10 +- docs/html/search/variables_a.js | 26 +- docs/html/search/variables_b.js | 4 +- docs/html/search/variables_c.js | 6 +- docs/html/search/variables_d.js | 8 +- docs/html/search/variables_e.js | 6 +- docs/html/search/variables_f.js | 4 +- ...k_1_1DataObject_1_1Destructor-members.html | 105 ++++++ ...d_1_1Task_1_1DataObject_1_1Destructor.html | 125 +++++++ ...ead_1_1Task_1_1DataObject_1_1Destructor.js | 5 + ...1DataObject_1_1Destructor__coll__graph.map | 3 + ...1DataObject_1_1Destructor__coll__graph.md5 | 1 + ...1DataObject_1_1Destructor__coll__graph.png | Bin 0 -> 4504 bytes docs/latex/annotated.tex | 2 + ...nd_1_1ArchiveFileOperator__coll__graph.pdf | Bin 8069 -> 8069 bytes ...Frontend_1_1ChannelObject__coll__graph.pdf | Bin 7665 -> 7665 bytes ...ntend_1_1ChannelObject__inherit__graph.pdf | Bin 31932 -> 31932 bytes ...ontend_1_1CharsetOperator__coll__graph.pdf | Bin 8015 -> 8015 bytes ...rontend_1_1CoreCommonUtil__coll__graph.pdf | Bin 9090 -> 9090 bytes ...tend_1_1CoreCommonUtil__inherit__graph.pdf | Bin 7986 -> 7986 bytes ...end_1_1DataObjectOperator__coll__graph.pdf | Bin 17514 -> 17514 bytes ..._1_1DataObjectOperator__inherit__graph.pdf | Bin 12366 -> 12366 bytes ...gFrontend_1_1FileOperator__coll__graph.pdf | Bin 8130 -> 8130 bytes ...GpgFrontend_1_1GenKeyInfo__coll__graph.pdf | Bin 11658 -> 11658 bytes ...d_1_1GlobalSettingStation__coll__graph.pdf | Bin 15649 -> 15649 bytes ..._1GlobalSettingStation__inherit__graph.pdf | Bin 15649 -> 15649 bytes ...ntend_1_1GpgBasicOperator__coll__graph.pdf | Bin 16391 -> 16391 bytes ...nd_1_1GpgBasicOperator__inherit__graph.pdf | Bin 12491 -> 12491 bytes ...end_1_1GpgCommandExecutor__coll__graph.pdf | Bin 15747 -> 15747 bytes ..._1_1GpgCommandExecutor__inherit__graph.pdf | Bin 11669 -> 11669 bytes ...gFrontend_1_1GpgConstants__coll__graph.pdf | Bin 8999 -> 8999 bytes ...GpgFrontend_1_1GpgContext__coll__graph.pdf | Bin 14562 -> 14562 bytes ...Frontend_1_1GpgContext__inherit__graph.pdf | Bin 11795 -> 11795 bytes ...assGpgFrontend_1_1GpgData__coll__graph.pdf | Bin 12271 -> 12271 bytes ..._1GpgDecryptResultAnalyse__coll__graph.pdf | Bin 11207 -> 11207 bytes ...pgDecryptResultAnalyse__inherit__graph.pdf | Bin 9252 -> 9252 bytes ..._1GpgEncryptResultAnalyse__coll__graph.pdf | Bin 11146 -> 11146 bytes ...pgEncryptResultAnalyse__inherit__graph.pdf | Bin 9123 -> 9123 bytes ...gFrontend_1_1GpgFileOpera__coll__graph.pdf | Bin 11941 -> 11941 bytes ...ontend_1_1GpgFileOpera__inherit__graph.pdf | Bin 11941 -> 11941 bytes ...d_1_1GpgImportInformation__coll__graph.pdf | Bin 10729 -> 10729 bytes ...rontend_1_1GpgImportedKey__coll__graph.pdf | Bin 8376 -> 8376 bytes ...assGpgFrontend_1_1GpgInfo__coll__graph.pdf | Bin 8813 -> 8813 bytes ...gFrontend_1_1GpgKeyGetter__coll__graph.pdf | Bin 19687 -> 19687 bytes ...ontend_1_1GpgKeyGetter__inherit__graph.pdf | Bin 12563 -> 12563 bytes ...d_1_1GpgKeyImportExporter__coll__graph.pdf | Bin 16538 -> 16538 bytes ..._1GpgKeyImportExporter__inherit__graph.pdf | Bin 12411 -> 12411 bytes ...Frontend_1_1GpgKeyManager__coll__graph.pdf | Bin 16604 -> 16604 bytes ...ntend_1_1GpgKeyManager__inherit__graph.pdf | Bin 12528 -> 12528 bytes ...pgFrontend_1_1GpgKeyOpera__coll__graph.pdf | Bin 17381 -> 17381 bytes ...rontend_1_1GpgKeyOpera__inherit__graph.pdf | Bin 13419 -> 13419 bytes ...ontend_1_1GpgKeySignature__coll__graph.pdf | Bin 11410 -> 11410 bytes ...lassGpgFrontend_1_1GpgKey__coll__graph.pdf | Bin 11166 -> 11166 bytes ...ntend_1_1GpgResultAnalyse__coll__graph.pdf | Bin 9779 -> 9779 bytes ...nd_1_1GpgResultAnalyse__inherit__graph.pdf | Bin 11899 -> 11899 bytes ...d_1_1GpgSignResultAnalyse__coll__graph.pdf | Bin 11054 -> 11054 bytes ..._1GpgSignResultAnalyse__inherit__graph.pdf | Bin 8984 -> 8984 bytes ...gFrontend_1_1GpgSignature__coll__graph.pdf | Bin 10944 -> 10944 bytes ...sGpgFrontend_1_1GpgSubKey__coll__graph.pdf | Bin 14612 -> 14612 bytes ...pgFrontend_1_1GpgTOFUInfo__coll__graph.pdf | Bin 10282 -> 10282 bytes ...rontend_1_1GpgUIDOperator__coll__graph.pdf | Bin 16469 -> 16469 bytes ...tend_1_1GpgUIDOperator__inherit__graph.pdf | Bin 12398 -> 12398 bytes ...lassGpgFrontend_1_1GpgUID__coll__graph.pdf | Bin 9959 -> 9959 bytes ...1_1GpgVerifyResultAnalyse__coll__graph.pdf | Bin 11968 -> 11968 bytes ...GpgVerifyResultAnalyse__inherit__graph.pdf | Bin 9975 -> 9975 bytes ...end_1_1KeyPackageOperator__coll__graph.pdf | Bin 8383 -> 8383 bytes ...nd_1_1PassphraseGenerator__coll__graph.pdf | Bin 11349 -> 11349 bytes ...1_1PassphraseGenerator__inherit__graph.pdf | Bin 11349 -> 11349 bytes ..._1SingletonFunctionObject__coll__graph.pdf | Bin 9917 -> 9917 bytes ...ingletonFunctionObject__inherit__graph.pdf | Bin 30365 -> 30365 bytes ...ingletonStorageCollection__coll__graph.pdf | Bin 13813 -> 13813 bytes ...ntend_1_1SingletonStorage__coll__graph.pdf | Bin 12328 -> 12328 bytes ...sGpgFrontend_1_1Thread_1_1CtxCheckTask.tex | 2 +- ...1_1Thread_1_1CtxCheckTask__coll__graph.md5 | 2 +- ...1_1Thread_1_1CtxCheckTask__coll__graph.pdf | Bin 13636 -> 17649 bytes ...Thread_1_1CtxCheckTask__inherit__graph.md5 | 2 +- ...Thread_1_1CtxCheckTask__inherit__graph.pdf | Bin 13636 -> 13999 bytes .../classGpgFrontend_1_1Thread_1_1Task.tex | 110 +++++- ...assGpgFrontend_1_1Thread_1_1TaskRunner.tex | 4 +- ...hread_1_1TaskRunnerGetter__coll__graph.md5 | 2 +- ...hread_1_1TaskRunnerGetter__coll__graph.pdf | Bin 19171 -> 21849 bytes ...ad_1_1TaskRunnerGetter__inherit__graph.pdf | Bin 11315 -> 11315 bytes ...d_1_1Thread_1_1TaskRunner__coll__graph.md5 | 2 +- ...d_1_1Thread_1_1TaskRunner__coll__graph.pdf | Bin 15061 -> 18348 bytes ..._1Thread_1_1TaskRunner__inherit__graph.pdf | Bin 8455 -> 8455 bytes ...ontend_1_1Thread_1_1Task_1_1DataObject.tex | 151 ++++++++ ...ead_1_1Task_1_1DataObject__coll__graph.md5 | 1 + ...ead_1_1Task_1_1DataObject__coll__graph.pdf | Bin 0 -> 10977 bytes ...rontend_1_1Thread_1_1Task__coll__graph.md5 | 2 +- ...rontend_1_1Thread_1_1Task__coll__graph.pdf | Bin 12635 -> 16744 bytes ...tend_1_1Thread_1_1Task__inherit__graph.md5 | 2 +- ...tend_1_1Thread_1_1Task__inherit__graph.pdf | Bin 15164 -> 15338 bytes ...tend_1_1UI_1_1AboutDialog__coll__graph.pdf | Bin 10516 -> 10516 bytes ...d_1_1UI_1_1AboutDialog__inherit__graph.pdf | Bin 8790 -> 8790 bytes ...tend_1_1UI_1_1AdvancedTab__coll__graph.pdf | Bin 9701 -> 9701 bytes ...d_1_1UI_1_1AdvancedTab__inherit__graph.pdf | Bin 9701 -> 9701 bytes ...nd_1_1UI_1_1AppearanceTab__coll__graph.pdf | Bin 10451 -> 10451 bytes ...1_1UI_1_1AppearanceTab__inherit__graph.pdf | Bin 10451 -> 10451 bytes ...ntend_1_1UI_1_1ChoosePage__coll__graph.pdf | Bin 9035 -> 9035 bytes ...nd_1_1UI_1_1ChoosePage__inherit__graph.pdf | Bin 9035 -> 9035 bytes ...tend_1_1UI_1_1CommonUtils__coll__graph.pdf | Bin 11031 -> 11031 bytes ...d_1_1UI_1_1CommonUtils__inherit__graph.pdf | Bin 10011 -> 10011 bytes ...d_1_1UI_1_1ConclusionPage__coll__graph.pdf | Bin 9401 -> 9401 bytes ..._1UI_1_1ConclusionPage__inherit__graph.pdf | Bin 9401 -> 9401 bytes ...1_1ExportKeyPackageDialog__coll__graph.pdf | Bin 11690 -> 11690 bytes ...ExportKeyPackageDialog__inherit__graph.pdf | Bin 9011 -> 9011 bytes ...rontend_1_1UI_1_1FilePage__coll__graph.pdf | Bin 14994 -> 14994 bytes ...tend_1_1UI_1_1FilePage__inherit__graph.pdf | Bin 14214 -> 14214 bytes ...classGpgFrontend_1_1UI_1_1FileReadTask.tex | 8 +- ...end_1_1UI_1_1FileReadTask__coll__graph.md5 | 2 +- ...end_1_1UI_1_1FileReadTask__coll__graph.pdf | Bin 14235 -> 17472 bytes ..._1_1UI_1_1FileReadTask__inherit__graph.md5 | 2 +- ..._1_1UI_1_1FileReadTask__inherit__graph.pdf | Bin 14235 -> 14433 bytes ...ntend_1_1UI_1_1FindWidget__coll__graph.pdf | Bin 16705 -> 16705 bytes ...nd_1_1UI_1_1FindWidget__inherit__graph.pdf | Bin 12937 -> 12937 bytes ...ntend_1_1UI_1_1GeneralTab__coll__graph.pdf | Bin 22530 -> 22530 bytes ...nd_1_1UI_1_1GeneralTab__inherit__graph.pdf | Bin 9145 -> 9145 bytes ...rontend_1_1UI_1_1HelpPage__coll__graph.pdf | Bin 9026 -> 9026 bytes ...tend_1_1UI_1_1HelpPage__inherit__graph.pdf | Bin 9026 -> 9026 bytes ..._1_1UI_1_1InfoBoardWidget__coll__graph.pdf | Bin 11731 -> 11731 bytes ...1UI_1_1InfoBoardWidget__inherit__graph.pdf | Bin 11048 -> 11048 bytes ...Frontend_1_1UI_1_1InfoTab__coll__graph.pdf | Bin 7455 -> 7455 bytes ...ntend_1_1UI_1_1InfoTab__inherit__graph.pdf | Bin 7455 -> 7455 bytes ...ontend_1_1UI_1_1IntroPage__coll__graph.pdf | Bin 7972 -> 7972 bytes ...end_1_1UI_1_1IntroPage__inherit__graph.pdf | Bin 7972 -> 7972 bytes ...1_1UI_1_1KeyDetailsDialog__coll__graph.pdf | Bin 8577 -> 8577 bytes ...UI_1_1KeyDetailsDialog__inherit__graph.pdf | Bin 8577 -> 8577 bytes ...end_1_1UI_1_1KeyGenDialog__coll__graph.pdf | Bin 18029 -> 18029 bytes ..._1_1UI_1_1KeyGenDialog__inherit__graph.pdf | Bin 13969 -> 13969 bytes ...ntend_1_1UI_1_1KeyGenPage__coll__graph.pdf | Bin 9053 -> 9053 bytes ...nd_1_1UI_1_1KeyGenPage__inherit__graph.pdf | Bin 9053 -> 9053 bytes ..._1_1KeyImportDetailDialog__coll__graph.pdf | Bin 12263 -> 12263 bytes ...1KeyImportDetailDialog__inherit__graph.pdf | Bin 9323 -> 9323 bytes ...Frontend_1_1UI_1_1KeyList__coll__graph.pdf | Bin 20889 -> 20889 bytes ...ntend_1_1UI_1_1KeyList__inherit__graph.pdf | Bin 15360 -> 15360 bytes ...Frontend_1_1UI_1_1KeyMgmt__coll__graph.pdf | Bin 23411 -> 23411 bytes ...ntend_1_1UI_1_1KeyMgmt__inherit__graph.pdf | Bin 15329 -> 15329 bytes ..._1_1UI_1_1KeyNewUIDDialog__coll__graph.pdf | Bin 12397 -> 12397 bytes ...1UI_1_1KeyNewUIDDialog__inherit__graph.pdf | Bin 9525 -> 9525 bytes ...1_1UI_1_1KeyPairDetailTab__coll__graph.pdf | Bin 16808 -> 16808 bytes ...UI_1_1KeyPairDetailTab__inherit__graph.pdf | Bin 14201 -> 14201 bytes ..._1_1UI_1_1KeyPairOperaTab__coll__graph.pdf | Bin 13370 -> 13370 bytes ...1UI_1_1KeyPairOperaTab__inherit__graph.pdf | Bin 10929 -> 10929 bytes ...1_1UI_1_1KeyPairSubkeyTab__coll__graph.pdf | Bin 19275 -> 19275 bytes ...UI_1_1KeyPairSubkeyTab__inherit__graph.pdf | Bin 14489 -> 14489 bytes ...nd_1_1UI_1_1KeyPairUIDTab__coll__graph.pdf | Bin 20619 -> 20619 bytes ...1_1UI_1_1KeyPairUIDTab__inherit__graph.pdf | Bin 14055 -> 14055 bytes ..._1_1KeyServerImportDialog__coll__graph.pdf | Bin 13688 -> 13688 bytes ...1KeyServerImportDialog__inherit__graph.pdf | Bin 13688 -> 13688 bytes ...1_1KeySetExpireDateDialog__coll__graph.pdf | Bin 17118 -> 17118 bytes ...KeySetExpireDateDialog__inherit__graph.pdf | Bin 12596 -> 12596 bytes ...1_1UI_1_1KeyUIDSignDialog__coll__graph.pdf | Bin 22305 -> 22305 bytes ...UI_1_1KeyUIDSignDialog__inherit__graph.pdf | Bin 9358 -> 9358 bytes ..._1_1UI_1_1KeyUploadDialog__coll__graph.pdf | Bin 13810 -> 13810 bytes ...1UI_1_1KeyUploadDialog__inherit__graph.pdf | Bin 12231 -> 12231 bytes ...end_1_1UI_1_1KeyserverTab__coll__graph.pdf | Bin 11508 -> 11508 bytes ..._1_1UI_1_1KeyserverTab__inherit__graph.pdf | Bin 10803 -> 10803 bytes ...ListedKeyServerTestThread__coll__graph.pdf | Bin 9091 -> 9091 bytes ...tedKeyServerTestThread__inherit__graph.pdf | Bin 9091 -> 9091 bytes .../classGpgFrontend_1_1UI_1_1MainWindow.tex | 4 +- ...ntend_1_1UI_1_1MainWindow__coll__graph.pdf | Bin 25172 -> 25172 bytes ...nd_1_1UI_1_1MainWindow__inherit__graph.pdf | Bin 16138 -> 16138 bytes ...ntend_1_1UI_1_1NetworkTab__coll__graph.pdf | Bin 10799 -> 10799 bytes ...nd_1_1UI_1_1NetworkTab__inherit__graph.pdf | Bin 10086 -> 10086 bytes ...gFrontend_1_1UI_1_1PlainTextEditorPage.tex | 2 +- ...UI_1_1PlainTextEditorPage__coll__graph.pdf | Bin 15731 -> 15731 bytes ...1_1PlainTextEditorPage__inherit__graph.pdf | Bin 14667 -> 14667 bytes ...ProxyConnectionTestThread__coll__graph.pdf | Bin 9008 -> 9008 bytes ...xyConnectionTestThread__inherit__graph.pdf | Bin 9008 -> 9008 bytes ...ntend_1_1UI_1_1QuitDialog__coll__graph.pdf | Bin 12136 -> 12136 bytes ...nd_1_1UI_1_1QuitDialog__inherit__graph.pdf | Bin 12136 -> 12136 bytes ...d_1_1UI_1_1SettingsDialog__coll__graph.pdf | Bin 26221 -> 26221 bytes ..._1UI_1_1SettingsDialog__inherit__graph.pdf | Bin 9902 -> 9902 bytes ...d_1_1UI_1_1SettingsObject__coll__graph.pdf | Bin 8961 -> 8961 bytes ..._1UI_1_1SettingsObject__inherit__graph.pdf | Bin 8462 -> 8462 bytes ...nd_1_1UI_1_1SignalStation__coll__graph.pdf | Bin 9001 -> 9001 bytes ...1_1UI_1_1SignalStation__inherit__graph.pdf | Bin 7834 -> 7834 bytes ...nd_1_1UI_1_1SignersPicker__coll__graph.pdf | Bin 21558 -> 21558 bytes ...1_1UI_1_1SignersPicker__inherit__graph.pdf | Bin 8635 -> 8635 bytes ...I_1_1SubkeyGenerateDialog__coll__graph.pdf | Bin 19638 -> 19638 bytes ..._1SubkeyGenerateDialog__inherit__graph.pdf | Bin 13679 -> 13679 bytes ...end_1_1UI_1_1TOFUInfoPage__coll__graph.pdf | Bin 7556 -> 7556 bytes ..._1_1UI_1_1TOFUInfoPage__inherit__graph.pdf | Bin 7556 -> 7556 bytes ...rontend_1_1UI_1_1TextEdit__coll__graph.pdf | Bin 15115 -> 15115 bytes ...tend_1_1UI_1_1TextEdit__inherit__graph.pdf | Bin 15115 -> 15115 bytes ...d_1_1UI_1_1TranslatorsTab__coll__graph.pdf | Bin 7722 -> 7722 bytes ..._1UI_1_1TranslatorsTab__inherit__graph.pdf | Bin 7722 -> 7722 bytes ...ontend_1_1UI_1_1UpdateTab__coll__graph.pdf | Bin 9140 -> 9140 bytes ...end_1_1UI_1_1UpdateTab__inherit__graph.pdf | Bin 9140 -> 9140 bytes ...UI_1_1VerifyDetailsDialog__coll__graph.pdf | Bin 22172 -> 22172 bytes ...1_1VerifyDetailsDialog__inherit__graph.pdf | Bin 9378 -> 9378 bytes ...1UI_1_1VerifyKeyDetailBox__coll__graph.pdf | Bin 10334 -> 10334 bytes ..._1_1VerifyKeyDetailBox__inherit__graph.pdf | Bin 9686 -> 9686 bytes ...1UI_1_1VersionCheckThread__coll__graph.pdf | Bin 8948 -> 8948 bytes ..._1_1VersionCheckThread__inherit__graph.pdf | Bin 8948 -> 8948 bytes ...nd_1_1UI_1_1WaitingDialog__coll__graph.pdf | Bin 7295 -> 7295 bytes ...1_1UI_1_1WaitingDialog__inherit__graph.pdf | Bin 7295 -> 7295 bytes ...gFrontend_1_1UI_1_1Wizard__coll__graph.pdf | Bin 8338 -> 8338 bytes ...ontend_1_1UI_1_1Wizard__inherit__graph.pdf | Bin 8338 -> 8338 bytes ...ProxyConnectionTestThread__coll__graph.pdf | Bin 6952 -> 6952 bytes ...assSignatureDetailsDialog__coll__graph.pdf | Bin 6523 -> 6523 bytes ...SignatureDetailsDialog__inherit__graph.pdf | Bin 6523 -> 6523 bytes ...TestListedKeyServerThread__coll__graph.pdf | Bin 6837 -> 6837 bytes docs/latex/classclass__coll__graph.pdf | Bin 4975 -> 4975 bytes docs/latex/hierarchy.tex | 2 + docs/latex/namespaceGpgFrontend_1_1UI.tex | 10 +- docs/latex/refman.tex | 2 + ...Frontend_1_1ArchiveStruct__coll__graph.pdf | Bin 8637 -> 8637 bytes ...end_1_1GpgContextInitArgs__coll__graph.pdf | Bin 8423 -> 8423 bytes ...xt_1_1__ctx__ref__deleter__coll__graph.pdf | Bin 7094 -> 7094 bytes ...a_1_1__data__ref__deleter__coll__graph.pdf | Bin 6597 -> 6597 bytes ...ey_1_1__key__ref__deleter__coll__graph.pdf | Bin 7321 -> 7321 bytes ...ad_1_1Task_1_1DataObject_1_1Destructor.tex | 26 ++ ...1DataObject_1_1Destructor__coll__graph.md5 | 1 + ...1DataObject_1_1Destructor__coll__graph.pdf | Bin 0 -> 7904 bytes ...nd_1_1UI_1_1KeyListColumn__coll__graph.pdf | Bin 9014 -> 9014 bytes ...ntend_1_1UI_1_1KeyListRow__coll__graph.pdf | Bin 8975 -> 8975 bytes ...d_1_1UI_1_1KeyMenuAbility__coll__graph.pdf | Bin 8902 -> 8902 bytes ...rontend_1_1UI_1_1KeyTable__coll__graph.pdf | Bin 16951 -> 16951 bytes ...1MainWindow_1_1CryptoMenu__coll__graph.pdf | Bin 9109 -> 9109 bytes ..._1_1UI_1_1SoftwareVersion__coll__graph.pdf | Bin 10103 -> 10103 bytes ...1_1__result__ref__deletor__coll__graph.pdf | Bin 6902 -> 6902 bytes 448 files changed, 3869 insertions(+), 2273 deletions(-) create mode 100644 docs/html/ThreadingModel_8h_source.html create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject-members.html create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject.html create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject.js create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject__coll__graph.map create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject__coll__graph.md5 create mode 100644 docs/html/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject__coll__graph.png create mode 100644 docs/html/inherit_graph_44.map create mode 100644 docs/html/inherit_graph_44.md5 create mode 100644 docs/html/inherit_graph_44.png create mode 100644 docs/html/inherit_graph_45.map create mode 100644 docs/html/inherit_graph_45.md5 create mode 100644 docs/html/inherit_graph_45.png create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor-members.html create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor.html create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor.js create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor__coll__graph.map create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor__coll__graph.md5 create mode 100644 docs/html/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor__coll__graph.png create mode 100644 docs/latex/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject.tex create mode 100644 docs/latex/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject__coll__graph.md5 create mode 100644 docs/latex/classGpgFrontend_1_1Thread_1_1Task_1_1DataObject__coll__graph.pdf create mode 100644 docs/latex/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor.tex create mode 100644 docs/latex/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor__coll__graph.md5 create mode 100644 docs/latex/structGpgFrontend_1_1Thread_1_1Task_1_1DataObject_1_1Destructor__coll__graph.pdf diff --git a/docs/html/CtxCheckTask_8h_source.html b/docs/html/CtxCheckTask_8h_source.html index 1422c400..96aedb3e 100644 --- a/docs/html/CtxCheckTask_8h_source.html +++ b/docs/html/CtxCheckTask_8h_source.html @@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('CtxCheckTask_8h_source.html',''); init
void FlushKeyCache()
flush the keys in the cache
Definition: GpgKeyGetter.cpp:101
Definition: CtxCheckTask.h:33
Definition: CtxCheckTask.h:38
-
Definition: Task.h:38
+
Definition: Task.h:43
void Run() override
Run - run the task.
Definition: CtxCheckTask.cpp:40
Definition: FileReadTask.cpp:31
Definition: FileReadTask.h:39
-
Definition: Task.h:38
+
Definition: Task.h:43
+
void SetFinishAfterRun(bool finish_after_run)
Set the Finish After Run object.
Definition: Task.cpp:71
void Run() override
Run - run the task.
Definition: FileReadTask.cpp:47
-
void slot_verify()
Definition: MainWindowSlotFunction.cpp:237
+
void slot_verify()
Definition: MainWindowSlotFunction.cpp:339
QAction * quote_act_
Action to quote text.
Definition: MainWindow.h:376
-
void upload_key_to_server()
Definition: MainWindowSlotFunction.cpp:496
+
void upload_key_to_server()
Definition: MainWindowSlotFunction.cpp:606
Definition: FileReadTask.cpp:31
void save_settings()
Definition: MainWindow.cpp:272
-
void SlotFileEncrypt()
Definition: MainWindowFileSlotFunction.cpp:151
+
void SlotFileEncrypt()
Definition: MainWindowFileSlotFunction.cpp:154
void slot_open_file_tab()
Definition: MainWindowSlotUI.cpp:58
QAction * redo_act_
Action to redo last action.
Definition: MainWindow.h:382
void LoadFile(const QString &fileName)
Definition: TextEdit.cpp:433
@@ -325,7 +325,7 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
QAction * cut_pgp_header_act_
Action for cutting the PGP header.
Definition: MainWindow.h:391
void create_actions()
Definition: MainWindowUI.cpp:34
void SyncSettings() noexcept
sync the settings to the file
Definition: GlobalSettingStation.cpp:33
-
void SlotFileDecryptVerify()
Definition: MainWindowFileSlotFunction.cpp:662
+
void SlotFileDecryptVerify()
Definition: MainWindowFileSlotFunction.cpp:679
void slot_cut_pgp_header()
Definition: MainWindowSlotUI.cpp:161
QAction * browser_act_
Action to open file browser.
Definition: MainWindow.h:354
static GlobalSettingStation & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:181
@@ -336,11 +336,11 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
void SetChecked(KeyIdArgsListPtr key_ids)
Set the Checked object.
Definition: KeyList.cpp:239
QMenu * file_menu_
Submenu for file-operations.
Definition: MainWindow.h:326
QAction * sign_act_
Action to sign text.
Definition: MainWindow.h:364
-
void slot_append_selected_keys()
Definition: MainWindowSlotFunction.cpp:449
+
void slot_append_selected_keys()
Definition: MainWindowSlotFunction.cpp:559
QAction * verify_act_
Action to verify text.
Definition: MainWindow.h:365
QAction * about_act_
Action to open about dialog.
Definition: MainWindow.h:385
QToolBar * file_tool_bar_
Toolbar holding file actions.
Definition: MainWindow.h:339
-
void refresh_keys_from_key_server()
Definition: MainWindowSlotFunction.cpp:487
+
void refresh_keys_from_key_server()
Definition: MainWindowSlotFunction.cpp:597
QAction * zoom_in_act_
Action to zoom in.
Definition: MainWindow.h:383
void create_menus()
Definition: MainWindowUI.cpp:315
QAction * cut_act_
Action to cut text.
Definition: MainWindow.h:377
@@ -352,30 +352,30 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
QAction * switch_tab_up_act_
Action to switch tab up.
Definition: MainWindow.h:351
void SlotSetRestartNeeded(bool needed)
Definition: MainWindowSlotUI.cpp:185
void slot_clean_double_line_breaks()
Definition: MainWindowSlotUI.cpp:137
-
void SlotOpenFile(QString &path)
Definition: MainWindowSlotFunction.cpp:503
+
void SlotOpenFile(QString &path)
Definition: MainWindowSlotFunction.cpp:613
QAction * open_act_
Action to open file.
Definition: MainWindow.h:353
void SignalUpgradeVersion(SoftwareVersion version)
QMenu * import_key_menu_
Submenu for import operations.
Definition: MainWindow.h:332
QAction * encrypt_sign_act_
Action to encrypt and sign text.
Definition: MainWindow.h:361
QDockWidget * attachment_dock_
Attachment Dock.
Definition: MainWindow.h:347
QAction * paste_act_
Action to paste text.
Definition: MainWindow.h:378
-
void slot_encrypt()
Definition: MainWindowSlotFunction.cpp:42
+
void slot_encrypt()
Definition: MainWindowSlotFunction.cpp:51
void AddMenuAction(QAction *act)
Definition: KeyList.cpp:300
QToolBar * crypt_tool_bar_
Toolbar holding crypt actions.
Definition: MainWindow.h:338
QMenu * steganography_menu_
Submenu for steganography operations.
Definition: MainWindow.h:337
nlohmann::json & Check(const std::string &key, const nlohmann::json &default_value)
Definition: SettingsObject.cpp:31
QAction * zoom_out_act_
Action to zoom out.
Definition: MainWindow.h:384
QDockWidget * key_list_dock_
Encrypt Dock.
Definition: MainWindow.h:346
-
void slot_show_key_details()
Definition: MainWindowSlotFunction.cpp:475
+
void slot_show_key_details()
Definition: MainWindowSlotFunction.cpp:585
QAction * print_act_
Action to print.
Definition: MainWindow.h:357
void SetCryptoMenuStatus(CryptoMenu::OperationType type)
Definition: MainWindowSlotUI.cpp:191
-
void slot_decrypt_verify()
Definition: MainWindowSlotFunction.cpp:374
+
void slot_decrypt_verify()
Definition: MainWindowSlotFunction.cpp:481
Definition: MainWindow.h:57
-
void slot_copy_mail_address_to_clipboard()
Definition: MainWindowSlotFunction.cpp:462
+
void slot_copy_mail_address_to_clipboard()
Definition: MainWindowSlotFunction.cpp:572
Definition: MainWindow.h:52
QAction * switch_tab_down_act_
Action to switch tab down.
Definition: MainWindow.h:352
The SettingsObject class This class is used to store settings for the application securely.
Definition: SettingsObject.h:43
-
void SlotFileSign()
Definition: MainWindowFileSlotFunction.cpp:355
+
void SlotFileSign()
Definition: MainWindowFileSlotFunction.cpp:364
void close_attachment_dock()
Definition: MainWindow.cpp:307
QAction * append_selected_keys_act_
Action to append selected keys to edit.
Definition: MainWindow.h:371
Definition: VersionCheckThread.h:41
@@ -387,22 +387,22 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
void slot_open_settings_dialog()
Definition: MainWindowSlotUI.cpp:102
QAction * start_wizard_act_
Action to open the wizard.
Definition: MainWindow.h:390
QAction * add_pgp_header_act_
Action for adding the PGP header.
Definition: MainWindow.h:392
-
void slot_sign()
Definition: MainWindowSlotFunction.cpp:119
+
void slot_sign()
Definition: MainWindowSlotFunction.cpp:173
QAction * save_as_act_
Action to save file as.
Definition: MainWindow.h:356
QToolButton * import_button_
Tool button for import dropdown menu in toolbar.
Definition: MainWindow.h:345
-
void SlotFileVerify()
Definition: MainWindowFileSlotFunction.cpp:447
+
void SlotFileVerify()
Definition: MainWindowFileSlotFunction.cpp:459
void slot_disable_tab_actions(int number)
Definition: MainWindowSlotUI.cpp:60
bool get_restart_needed() const
return true, if restart is needed
Definition: MainWindowSlotUI.cpp:189
QAction * find_act_
Action to find text.
Definition: MainWindow.h:380
Definition: KeyList.h:152
void slot_open_key_management()
Definition: MainWindowSlotUI.cpp:52
-
void slot_version_upgrade(const SoftwareVersion &version)
Definition: MainWindowSlotFunction.cpp:505
+
void slot_version_upgrade(const SoftwareVersion &version)
Definition: MainWindowSlotFunction.cpp:615
QAction * decrypt_verify_act_
Action to encrypt and sign text.
Definition: MainWindow.h:362
QAction * clean_double_line_breaks_act_
Definition: MainWindow.h:367
QAction * copy_act_
Action to copy text.
Definition: MainWindow.h:375
void restore_settings()
Definition: MainWindow.cpp:146
void Init() noexcept
Definition: MainWindow.cpp:46
-
void slot_find()
Definition: MainWindowSlotFunction.cpp:225
+
void slot_find()
Definition: MainWindowSlotFunction.cpp:327
QMenu * key_menu_
Submenu for key-operations.
Definition: MainWindow.h:330
QAction * import_key_from_edit_act_
Action to import key from edit.
Definition: MainWindow.h:366
static SignalStation * GetInstance()
Get the Instance object.
Definition: SignalStation.cpp:37
@@ -411,12 +411,12 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
QMenu * edit_menu_
Submenu for text-operations.
Definition: MainWindow.h:327
QAction * decrypt_act_
Action to decrypt text.
Definition: MainWindow.h:363
QToolBar * special_edit_tool_bar_
Toolbar holding special edit actions.
Definition: MainWindow.h:342
-
void SlotFileEncryptSign()
Definition: MainWindowFileSlotFunction.cpp:536
+
void SlotFileEncryptSign()
Definition: MainWindowFileSlotFunction.cpp:551
QAction * encrypt_act_
Action to encrypt text.
Definition: MainWindow.h:360
void closeEvent(QCloseEvent *event) override
Definition: MainWindow.cpp:316
void slot_import_key_from_edit()
Definition: MainWindowSlotUI.cpp:46
QAction * translate_act_
Action to open about dialog.
Definition: MainWindow.h:387
-
void SlotFileDecrypt()
Definition: MainWindowFileSlotFunction.cpp:283
+
void SlotFileDecrypt()
Definition: MainWindowFileSlotFunction.cpp:291
TextEdit * edit_
Tabwidget holding the edit-windows.
Definition: MainWindow.h:325
QAction * open_settings_act_
Action to open settings dialog.
Definition: MainWindow.h:388
void slot_add_pgp_header()
Definition: MainWindowSlotUI.cpp:147
@@ -427,11 +427,11 @@ $(document).ready(function(){initNavTree('MainWindow_8h_source.html',''); initRe
QAction * show_key_details_act_
Action to open key-details dialog.
Definition: MainWindow.h:389
QAction * close_tab_act_
Action to print.
Definition: MainWindow.h:358
Class for handling the verify label shown at bottom of a textedit-page.
Definition: InfoBoardWidget.h:53
-
void slot_decrypt()
Definition: MainWindowSlotFunction.cpp:182
+
void slot_decrypt()
Definition: MainWindowSlotFunction.cpp:259
void SignalRefreshStatusBar(const QString &message, int timeout)
PlainTextEditorPage * CurTextPage() const
Definition: TextEdit.cpp:377
QAction * open_key_management_act_
Action to open key management.
Definition: MainWindow.h:374
-
void slot_encrypt_sign()
Definition: MainWindowSlotFunction.cpp:275
+
void slot_encrypt_sign()
Definition: MainWindowSlotFunction.cpp:379
-
void slot_verify()
Definition: MainWindowSlotFunction.cpp:237
+
void slot_verify()
Definition: MainWindowSlotFunction.cpp:339
QAction * quote_act_
Action to quote text.
Definition: MainWindow.h:376
-
bool process_tarball_into_directory(QWidget *parent, std::filesystem::path &path)
convert directory into tarball
Definition: MainWindowFileSlotFunction.cpp:67
-
void upload_key_to_server()
Definition: MainWindowSlotFunction.cpp:496
+
bool process_tarball_into_directory(QWidget *parent, std::filesystem::path &path)
convert directory into tarball
Definition: MainWindowFileSlotFunction.cpp:68
+
void upload_key_to_server()
Definition: MainWindowSlotFunction.cpp:606
Definition: FileReadTask.cpp:31
void SlotCopy() const
Definition: TextEdit.cpp:537
FilePage * CurFilePage() const
Definition: TextEdit.cpp:381
static GpgError SignFile(KeyListPtr keys, const std::string &in_path, const std::string &out_path, GpgSignResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Definition: GpgFileOpera.cpp:103
void save_settings()
Definition: MainWindow.cpp:272
-
void SlotFileEncrypt()
Definition: MainWindowFileSlotFunction.cpp:151
+
void SlotFileEncrypt()
Definition: MainWindowFileSlotFunction.cpp:154
void slot_open_file_tab()
Definition: MainWindowSlotUI.cpp:58
void ShowNotificationWidget(QWidget *widget, const char *className)
Definition: PlainTextEditorPage.cpp:107
QAction * redo_act_
Action to redo last action.
Definition: MainWindow.h:382
+
void process_operation(QWidget *parent, const std::string &waiting_title, const Thread::Task::TaskRunnable func, const Thread::Task::TaskCallback callback, Thread::Task::DataObjectPtr data_object)
Definition: UserInterfaceUtils.cpp:116
bool ExportKeys(KeyIdArgsListPtr &uid_list, ByteArrayPtr &out_buffer, bool secret=false) const
Definition: GpgKeyImportExporter.cpp:71
gpgme_error_t Decrypt(BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgDecrResult &result)
Call the interface provided by gpgme for decryption operation.
Definition: GpgBasicOperator.cpp:64
-
bool process_directory_into_tarball(QWidget *parent, QString &path)
convert tarball into directory
Definition: MainWindowFileSlotFunction.cpp:114
+
bool process_directory_into_tarball(QWidget *parent, QString &path)
convert tarball into directory
Definition: MainWindowFileSlotFunction.cpp:116
bool MaybeSaveAnyTab()
Definition: TextEdit.cpp:322
QAction * quit_act_
Action to quit application.
Definition: MainWindow.h:359
QAction * cut_pgp_header_act_
Action for cutting the PGP header.
Definition: MainWindow.h:391
void create_actions()
Definition: MainWindowUI.cpp:34
-
void SlotFileDecryptVerify()
Definition: MainWindowFileSlotFunction.cpp:662
+
void SlotFileDecryptVerify()
Definition: MainWindowFileSlotFunction.cpp:679
void slot_cut_pgp_header()
Definition: MainWindowSlotUI.cpp:161
QAction * browser_act_
Action to open file browser.
Definition: MainWindow.h:354
static GlobalSettingStation & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:181
@@ -157,15 +158,14 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QAction * sign_act_
Action to sign text.
Definition: MainWindow.h:364
void SlotRedo() const
redo last change in current text page
Definition: TextEdit.cpp:563
void AddListGroupTab(const QString &name, KeyListRow::KeyType selectType=KeyListRow::SECRET_OR_PUBLIC_KEY, KeyListColumn::InfoType infoType=KeyListColumn::ALL, const std::function< bool(const GpgKey &)> &filter=[](const GpgKey &) -> bool { return true;})
Definition: KeyList.cpp:99
-
void slot_append_selected_keys()
Definition: MainWindowSlotFunction.cpp:449
-
void process_operation(QWidget *parent, const std::string &waiting_title, const std::function< void()> &func)
Definition: UserInterfaceUtils.cpp:116
+
void slot_append_selected_keys()
Definition: MainWindowSlotFunction.cpp:559
QAction * verify_act_
Action to verify text.
Definition: MainWindow.h:365
Definition: SettingsAdvanced.h:35
-
void SlotImportKeys(QWidget *parent, const std::string &in_buffer)
Definition: UserInterfaceUtils.cpp:172
+
void SlotImportKeys(QWidget *parent, const std::string &in_buffer)
Definition: UserInterfaceUtils.cpp:180
QAction * about_act_
Action to open about dialog.
Definition: MainWindow.h:385
QToolBar * file_tool_bar_
Toolbar holding file actions.
Definition: MainWindow.h:339
FilePage * SlotCurPageFileTreeView() const
Definition: TextEdit.cpp:398
-
void refresh_keys_from_key_server()
Definition: MainWindowSlotFunction.cpp:487
+
void refresh_keys_from_key_server()
Definition: MainWindowSlotFunction.cpp:597
QAction * zoom_in_act_
Action to zoom in.
Definition: MainWindow.h:383
void create_menus()
Definition: MainWindowUI.cpp:315
QAction * cut_act_
Action to cut text.
Definition: MainWindow.h:377
@@ -180,13 +180,13 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
void SlotSetRestartNeeded(bool needed)
Definition: MainWindowSlotUI.cpp:185
void slot_clean_double_line_breaks()
Definition: MainWindowSlotUI.cpp:137
void SlotNewFileTab() const
Definition: TextEdit.cpp:72
-
void SlotOpenFile(QString &path)
Definition: MainWindowSlotFunction.cpp:503
+
void SlotOpenFile(QString &path)
Definition: MainWindowSlotFunction.cpp:613
QAction * open_act_
Action to open file.
Definition: MainWindow.h:353
QMenu * import_key_menu_
Submenu for import operations.
Definition: MainWindow.h:332
QAction * encrypt_sign_act_
Action to encrypt and sign text.
Definition: MainWindow.h:361
void SlotSelectAll() const
select all in current text page
Definition: TextEdit.cpp:591
QAction * paste_act_
Action to paste text.
Definition: MainWindow.h:378
-
void slot_encrypt()
Definition: MainWindowSlotFunction.cpp:42
+
void slot_encrypt()
Definition: MainWindowSlotFunction.cpp:51
Definition: KeyMgmt.h:45
Definition: GpgVerifyResultAnalyse.h:40
void SlotFillTextEditWithText(const QString &text) const
Definition: TextEdit.cpp:425
@@ -199,23 +199,23 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QAction * zoom_out_act_
Action to zoom out.
Definition: MainWindow.h:384
Definition: KeyDetailsDialog.h:37
QDockWidget * key_list_dock_
Encrypt Dock.
Definition: MainWindow.h:346
-
void slot_show_key_details()
Definition: MainWindowSlotFunction.cpp:475
+
void slot_show_key_details()
Definition: MainWindowSlotFunction.cpp:585
QAction * print_act_
Action to print.
Definition: MainWindow.h:357
void SlotPaste() const
Definition: TextEdit.cpp:547
void SetCryptoMenuStatus(CryptoMenu::OperationType type)
Definition: MainWindowSlotUI.cpp:191
bool CurrentVersionReleased() const
Definition: SoftwareVersion.h:79
-
void slot_decrypt_verify()
Definition: MainWindowSlotFunction.cpp:374
+
void slot_decrypt_verify()
Definition: MainWindowSlotFunction.cpp:481
bool SlotSaveAs()
Definition: TextEdit.cpp:219
-
void slot_copy_mail_address_to_clipboard()
Definition: MainWindowSlotFunction.cpp:462
+
void slot_copy_mail_address_to_clipboard()
Definition: MainWindowSlotFunction.cpp:572
void SlotSwitchTabUp() const
Definition: TextEdit.cpp:492
GpgKey GetKey(const std::string &id, bool use_cache=true)
Get the Key object.
Definition: GpgKeyGetter.cpp:47
QAction * switch_tab_down_act_
Action to switch tab down.
Definition: MainWindow.h:352
void SlotPrint()
Definition: TextEdit.cpp:458
The SettingsObject class This class is used to store settings for the application securely.
Definition: SettingsObject.h:43
void SlotUndo() const
Definition: TextEdit.cpp:555
-
void SlotFileSign()
Definition: MainWindowFileSlotFunction.cpp:355
+
void SlotFileSign()
Definition: MainWindowFileSlotFunction.cpp:364
KeyIdArgsListPtr GetSelected()
Get the Selected object.
Definition: KeyList.cpp:253
-
void SlotImportKeyFromFile(QWidget *parent)
Definition: UserInterfaceUtils.cpp:180
+
void SlotImportKeyFromFile(QWidget *parent)
Definition: UserInterfaceUtils.cpp:188
QAction * append_selected_keys_act_
Action to append selected keys to edit.
Definition: MainWindow.h:371
QAction * check_update_act_
Action to open about dialog.
Definition: MainWindow.h:386
KeyIdArgsListPtr GetPrivateChecked()
Get the Private Checked object.
Definition: KeyList.cpp:209
@@ -233,13 +233,13 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QPlainTextEdit * GetTextPage()
Definition: PlainTextEditorPage.cpp:81
QAction * start_wizard_act_
Action to open the wizard.
Definition: MainWindow.h:390
QAction * add_pgp_header_act_
Action for adding the PGP header.
Definition: MainWindow.h:392
-
void slot_sign()
Definition: MainWindowSlotFunction.cpp:119
+
void slot_sign()
Definition: MainWindowSlotFunction.cpp:173
Class for handling the about dialog.
Definition: AboutDialog.h:119
QAction * save_as_act_
Action to save file as.
Definition: MainWindow.h:356
QToolButton * import_button_
Tool button for import dropdown menu in toolbar.
Definition: MainWindow.h:345
-
void SlotFileVerify()
Definition: MainWindowFileSlotFunction.cpp:447
+
void SlotFileVerify()
Definition: MainWindowFileSlotFunction.cpp:459
void slot_disable_tab_actions(int number)
Definition: MainWindowSlotUI.cpp:60
-
void SlotImportKeyFromKeyServer(QWidget *parent)
Definition: UserInterfaceUtils.cpp:196
+
void SlotImportKeyFromKeyServer(QWidget *parent)
Definition: UserInterfaceUtils.cpp:204
GPGFRONTEND_CORE_EXPORT gpg_err_code_t check_gpg_error_2_err_code(gpgme_error_t err, gpgme_error_t predict=GPG_ERR_NO_ERROR)
Definition: GpgConstants.cpp:66
void SlotSave()
Definition: TextEdit.cpp:148
static GpgError DecryptVerifyFile(const std::string &in_path, const std::string &out_path, GpgDecrResult &decr_res, GpgVerifyResult &verify_res)
Definition: GpgFileOpera.cpp:197
@@ -250,12 +250,12 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QAction * find_act_
Action to find text.
Definition: MainWindow.h:380
bool IsExpired() const
Definition: GpgKey.cpp:142
void slot_open_key_management()
Definition: MainWindowSlotUI.cpp:52
-
void slot_version_upgrade(const SoftwareVersion &version)
Definition: MainWindowSlotFunction.cpp:505
+
void slot_version_upgrade(const SoftwareVersion &version)
Definition: MainWindowSlotFunction.cpp:615
QAction * decrypt_verify_act_
Action to encrypt and sign text.
Definition: MainWindow.h:362
QAction * clean_double_line_breaks_act_
Definition: MainWindow.h:367
static GpgError EncryptSignFile(KeyListPtr keys, KeyListPtr signer_keys, const std::string &in_path, const std::string &out_path, GpgEncrResult &encr_res, GpgSignResult &sign_res, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Definition: GpgFileOpera.cpp:165
QAction * copy_act_
Action to copy text.
Definition: MainWindow.h:375
-
void slot_find()
Definition: MainWindowSlotFunction.cpp:225
+
void slot_find()
Definition: MainWindowSlotFunction.cpp:327
QMenu * key_menu_
Submenu for key-operations.
Definition: MainWindow.h:330
QAction * import_key_from_edit_act_
Action to import key from edit.
Definition: MainWindow.h:366
QString GetSelected() const
Get the Selected object.
Definition: FilePage.cpp:187
@@ -265,13 +265,13 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QMenu * crypt_menu_
Submenu for crypt-operations.
Definition: MainWindow.h:328
QMenu * edit_menu_
Submenu for text-operations.
Definition: MainWindow.h:327
void SlotCloseTab()
Definition: TextEdit.cpp:236
-
void SlotImportKeyFromClipboard(QWidget *parent)
Definition: UserInterfaceUtils.cpp:201
+
void SlotImportKeyFromClipboard(QWidget *parent)
Definition: UserInterfaceUtils.cpp:209
QAction * decrypt_act_
Action to decrypt text.
Definition: MainWindow.h:363
QToolBar * special_edit_tool_bar_
Toolbar holding special edit actions.
Definition: MainWindow.h:342
static unsigned int EncryptFileSymmetric(const std::string &in_path, const std::string &out_path, GpgEncrResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
运用对称加密算法加密文件
Definition: GpgFileOpera.cpp:226
bool IsRevoked() const
Definition: GpgKey.cpp:144
void SlotNewTab()
Definition: TextEdit.cpp:54
-
void SlotFileEncryptSign()
Definition: MainWindowFileSlotFunction.cpp:536
+
void SlotFileEncryptSign()
Definition: MainWindowFileSlotFunction.cpp:551
QAction * encrypt_act_
Action to encrypt text.
Definition: MainWindow.h:360
Definition: KeyUploadDialog.h:41
void show_verify_details(QWidget *parent, InfoBoardWidget *info_board, GpgError error, const GpgVerifyResult &verify_result)
Definition: UserInterfaceUtils.cpp:52
@@ -279,7 +279,7 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QAction * translate_act_
Action to open about dialog.
Definition: MainWindow.h:387
void process_result_analyse(TextEdit *edit, InfoBoardWidget *info_board, const GpgResultAnalyse &result_analyse)
Definition: UserInterfaceUtils.cpp:96
bool IsDisabled() const
Definition: GpgKey.cpp:146
-
void SlotFileDecrypt()
Definition: MainWindowFileSlotFunction.cpp:283
+
void SlotFileDecrypt()
Definition: MainWindowFileSlotFunction.cpp:291
TextEdit * edit_
Tabwidget holding the edit-windows.
Definition: MainWindow.h:325
KeyListPtr GetKeys(const KeyIdArgsListPtr &ids)
Get the Keys object.
Definition: GpgKeyGetter.cpp:148
QAction * open_settings_act_
Action to open settings dialog.
Definition: MainWindow.h:388
@@ -288,7 +288,7 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
QAction * new_tab_act_
Action to create new tab.
Definition: MainWindow.h:350
QMenu * help_menu_
Submenu for help-operations.
Definition: MainWindow.h:329
QAction * save_act_
Action to save file.
Definition: MainWindow.h:355
-
static CommonUtils * GetInstance()
Get the Instance object.
Definition: UserInterfaceUtils.cpp:135
+
static CommonUtils * GetInstance()
Get the Instance object.
Definition: UserInterfaceUtils.cpp:143
Definition: GpgDecryptResultAnalyse.h:41
QToolBar * edit_tool_bar_
Toolbar holding edit actions.
Definition: MainWindow.h:340
void SlotSwitchTabDown() const
Definition: TextEdit.cpp:499
@@ -296,10 +296,10 @@ $(document).ready(function(){initNavTree('SettingsAdvanced_8h_source.html','');
gpg_error_t Encrypt(KeyListPtr keys, BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgEncrResult &result)
Call the interface provided by gpgme for encryption operation.
Definition: GpgBasicOperator.cpp:38
QAction * close_tab_act_
Action to print.
Definition: MainWindow.h:358
Definition: GpgKey.h:44
-
void slot_decrypt()
Definition: MainWindowSlotFunction.cpp:182
+
void slot_decrypt()
Definition: MainWindowSlotFunction.cpp:259
PlainTextEditorPage * CurTextPage() const
Definition: TextEdit.cpp:377
QAction * open_key_management_act_
Action to open key management.
Definition: MainWindow.h:374
-
void slot_encrypt_sign()
Definition: MainWindowSlotFunction.cpp:275
+
void slot_encrypt_sign()
Definition: MainWindowSlotFunction.cpp:379
Definition: TaskRunner.h:39
-
void PostTask(Task *task)
Definition: TaskRunner.cpp:36
+
void PostTask(Task *task)
Definition: TaskRunner.cpp:38
Definition: CtxCheckTask.h:33
TaskRunner()
Construct a new Task Runner object.
std::queue< Task * > tasks
The task queue.
Definition: TaskRunner.h:70
std::mutex tasks_mutex_
The task queue mutex.
Definition: TaskRunner.h:71
-
Definition: Task.h:38
+
Definition: Task.h:43
+
std::string GetUUID() const
Definition: Task.cpp:69
virtual ~TaskRunner() override
Destroy the Task Runner object.
Definition: TaskRunner.h:39
+
void free_heap_ptr(Destructor *)
Definition: Task.cpp:133
+
void SetRTN(int rtn)
Definition: Task.cpp:75
+
Destructor * get_heap_ptr(size_t bytes_size)
Get the heap ptr object.
Definition: Task.cpp:113
+
~DataObject()
Destroy the Data Object object.
Definition: Task.cpp:119
virtual ~Task() override
Destroy the Task object.
-
Task()
Construct a new Task object.
Definition: Task.cpp:33
+
T PopObject()
Definition: Task.h:100
+
Task()
Construct a new Task object.
Definition: Task.cpp:39
+
void AppendObject(T &&obj)
Definition: Task.h:78
Definition: CtxCheckTask.h:33
-
virtual void Run()
Run - run the task.
Definition: Task.cpp:70
-
Definition: Task.h:38
+
virtual void Run()
Run - run the task.
Definition: Task.cpp:102
+
static std::string generate_uuid()
Definition: Task.cpp:143
+
size_t GetObjectSize()
Get the Objects Size.
Definition: Task.cpp:129
+
Definition: Task.h:43
+
void SetFinishAfterRun(bool finish_after_run)
Set the Finish After Run object.
Definition: Task.cpp:71
+
std::string GetUUID() const
Definition: Task.cpp:69
+
Definition: Task.h:59
+
DataObject to be passed to the callback function.
Definition: Task.h:57
static CoreCommonUtil * GetInstance()
Construct a new Core Common Util object.
Definition: CoreCommonUtil.cpp:33
@@ -174,19 +177,19 @@ $(document).ready(function(){initNavTree('UserInterfaceUtils_8h_source.html','')
Definition: WaitingDialog.h:40
Definition: FileReadTask.cpp:31
void refresh_info_board(InfoBoardWidget *info_board, int status, const std::string &report_text)
Definition: UserInterfaceUtils.cpp:84
+
void process_operation(QWidget *parent, const std::string &waiting_title, const Thread::Task::TaskRunnable func, const Thread::Task::TaskCallback callback, Thread::Task::DataObjectPtr data_object)
Definition: UserInterfaceUtils.cpp:116
int GetStatus() const
Get the Status object.
Definition: GpgResultAnalyse.cpp:35
Definition: VerifyDetailsDialog.h:41
Definition: CoreCommonUtil.cpp:29
-
Definition: UserInterfaceUtils.h:111
+
Definition: UserInterfaceUtils.h:114
const std::string GetResultReport() const
Get the Result Report object.
Definition: GpgResultAnalyse.cpp:31
-
static GpgKeyImportExporter & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:181
+
static TaskRunnerGetter & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:181
void AddOptionalAction(const QString &name, const std::function< void()> &action)
Definition: InfoBoardWidget.cpp:113
std::string AppPath
executable binary path of gnupg
Definition: GpgInfo.h:41
void ResetOptionActionsMenu()
Definition: InfoBoardWidget.cpp:129
void import_unknown_key_from_keyserver(QWidget *parent, const GpgVerifyResultAnalyse &verify_res)
Definition: UserInterfaceUtils.cpp:61
libconfig::Setting & GetUISettings() noexcept
Definition: GlobalSettingStation.h:68
-
void process_operation(QWidget *parent, const std::string &waiting_title, const std::function< void()> &func)
Definition: UserInterfaceUtils.cpp:116
-
void SlotImportKeys(QWidget *parent, const std::string &in_buffer)
Definition: UserInterfaceUtils.cpp:172
+
void SlotImportKeys(QWidget *parent, const std::string &in_buffer)
Definition: UserInterfaceUtils.cpp:180
const GpgInfo & GetInfo() const
Get the Info object.
Definition: GpgContext.h:95
TextEdit class.
Definition: TextEdit.h:41
Definition: GpgVerifyResultAnalyse.h:40
@@ -195,25 +198,25 @@ $(document).ready(function(){initNavTree('UserInterfaceUtils_8h_source.html','')
nlohmann::json & Check(const std::string &key, const nlohmann::json &default_value)
Definition: SettingsObject.cpp:31
void SlotRefresh(const QString &text, GpgFrontend::UI::InfoBoardStatus status)
Definition: InfoBoardWidget.cpp:89
Definition: KeyImportDetailDialog.h:42
-
void slot_update_key_status()
update the key status when signal is emitted
Definition: UserInterfaceUtils.cpp:350
+
void slot_update_key_status()
update the key status when signal is emitted
Definition: UserInterfaceUtils.cpp:358
The SettingsObject class This class is used to store settings for the application securely.
Definition: SettingsObject.h:43
Definition: GpgResultAnalyse.h:37
static std::vector< int > GetAllChannelId()
Get all the channel ids.
Definition: GpgFunctionObject.h:259
-
void SlotImportKeyFromFile(QWidget *parent)
Definition: UserInterfaceUtils.cpp:180
-
void SlotImportKeyFromKeyServer(QWidget *parent)
Definition: UserInterfaceUtils.cpp:196
+
void SlotImportKeyFromFile(QWidget *parent)
Definition: UserInterfaceUtils.cpp:188
+
void SlotImportKeyFromKeyServer(QWidget *parent)
Definition: UserInterfaceUtils.cpp:204
void AssociateTabWidget(QTabWidget *tab)
Definition: InfoBoardWidget.cpp:103
gpgme_signature_t GetSignatures() const
Get the Signatures object.
Definition: GpgVerifyResultAnalyse.cpp:205
static SignalStation * GetInstance()
Get the Instance object.
Definition: SignalStation.cpp:37
void SignalKeyDatabaseRefreshDone()
emit when the key database is refreshed
-
void SlotImportKeyFromClipboard(QWidget *parent)
Definition: UserInterfaceUtils.cpp:201
-
CommonUtils()
Construct a new Common Utils object.
Definition: UserInterfaceUtils.cpp:142
+
void SlotImportKeyFromClipboard(QWidget *parent)
Definition: UserInterfaceUtils.cpp:209
+
CommonUtils()
Construct a new Common Utils object.
Definition: UserInterfaceUtils.cpp:150
GpgImportInformation ImportKey(StdBypeArrayPtr inBuffer)
Definition: GpgKeyImportExporter.cpp:42
-
void SlotExecuteGpgCommand(const QStringList &arguments, const std::function< void(QProcess *)> &interact_func)
Definition: UserInterfaceUtils.cpp:207
-
Definition: Task.h:38
+
void SlotExecuteGpgCommand(const QStringList &arguments, const std::function< void(QProcess *)> &interact_func)
Definition: UserInterfaceUtils.cpp:215
+
Definition: Task.h:43
void show_verify_details(QWidget *parent, InfoBoardWidget *info_board, GpgError error, const GpgVerifyResult &verify_result)
Definition: UserInterfaceUtils.cpp:52
void process_result_analyse(TextEdit *edit, InfoBoardWidget *info_board, const GpgResultAnalyse &result_analyse)
Definition: UserInterfaceUtils.cpp:96
Definition: GpgKeyImportExporter.h:57
-
static CommonUtils * GetInstance()
Get the Instance object.
Definition: UserInterfaceUtils.cpp:135
+
static CommonUtils * GetInstance()
Get the Instance object.
Definition: UserInterfaceUtils.cpp:143
Class for handling the verify label shown at bottom of a textedit-page.
Definition: InfoBoardWidget.h:53
Here are the classes, structs, unions and interfaces with brief descriptions:
-
[detail level 1234]
+
[detail level 12345]
- + + + diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask-members.html b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask-members.html index 458b95d8..cfc2dc96 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask-members.html +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask-members.html @@ -91,22 +91,28 @@ $(document).ready(function(){initNavTree('classGpgFrontend_1_1Thread_1_1CtxCheck
 NGpgFrontend
 NThread
 NUI
- - - - - + + + + + + + + + - - - - - - - - - - + + + + + + + + + + + +
before_finish_task() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
callback_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
CtxCheckTask()GpgFrontend::Thread::CtxCheckTask
finish_after_run_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
init() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
rtn_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
run() override (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivatevirtual
callback_thread_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
CtxCheckTask()GpgFrontend::Thread::CtxCheckTask
data_object_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
DataObjectPtr typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
finish_after_run_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
generate_uuid()GpgFrontend::Thread::Taskprivatestatic
GetUUID() constGpgFrontend::Thread::Task
init() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
rtn_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
Run() overrideGpgFrontend::Thread::CtxCheckTaskprotectedvirtual
runnable_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
SetFinishAfterRun(bool finish_after_run) (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprotected
SetRTN(int rtn) (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprotected
SignalGnupgNotInstall() (defined in GpgFrontend::Thread::CtxCheckTask)GpgFrontend::Thread::CtxCheckTasksignal
SignalTaskFinished() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Tasksignal
Task()GpgFrontend::Thread::Task
Task(TaskCallback callback)GpgFrontend::Thread::Task
Task(TaskRunnable runnable, TaskCallback callback=[](int) {})GpgFrontend::Thread::Task
TaskCallback typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunnable typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
run() override (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivatevirtual
runnable_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
SetFinishAfterRun(bool finish_after_run)GpgFrontend::Thread::Taskprotected
SetRTN(int rtn)GpgFrontend::Thread::Taskprotected
SignalGnupgNotInstall() (defined in GpgFrontend::Thread::CtxCheckTask)GpgFrontend::Thread::CtxCheckTasksignal
SignalTaskFinished() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Tasksignal
Task()GpgFrontend::Thread::Task
Task(TaskCallback callback, DataObjectPtr data_object=nullptr)GpgFrontend::Thread::Task
Task(TaskRunnable runnable, TaskCallback callback=[](int, std::shared_ptr< DataObject >) {}, DataObjectPtr data=nullptr)GpgFrontend::Thread::Task
TaskCallback typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunnable typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
uuid_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
~Task() overrideGpgFrontend::Thread::Taskvirtual
diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask.html b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask.html index ef494e5d..20fecc8a 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask.html +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask.html @@ -96,8 +96,8 @@ Inheritance diagram for GpgFrontend::Thread::CtxCheckTask:
Inheritance graph
- - + + @@ -107,10 +107,19 @@ Collaboration diagram for GpgFrontend::Thread::CtxCheckTask:
Collaboration graph
- - - - + + + + + + + + + + + + +
@@ -133,15 +142,17 @@ Public Member Functions - - - - - - + + + + + + + +
 Task ()
 Construct a new Task object. More...
 
 Task (TaskCallback callback)
 Construct a new Task object. More...
 
 Task (TaskRunnable runnable, TaskCallback callback=[](int) {})
 Construct a new Task object. More...
 
 Task (TaskCallback callback, DataObjectPtr data_object=nullptr)
 Construct a new Task object. More...
 
 Task (TaskRunnable runnable, TaskCallback callback=[](int, std::shared_ptr< DataObject >) {}, DataObjectPtr data=nullptr)
 Construct a new Task object. More...
 
virtual ~Task () override
 Destroy the Task object. More...
 
std::string GetUUID () const
 
@@ -149,22 +160,24 @@ Protected Member Functions - + + - +

Protected Member Functions

 Run - run the task. More...
 
- Protected Member Functions inherited from GpgFrontend::Thread::Task
-void SetFinishAfterRun (bool finish_after_run)
void SetFinishAfterRun (bool finish_after_run)
 Set the Finish After Run object. More...
 
-void SetRTN (int rtn)
void SetRTN (int rtn)
 
- - - - + + + + + +

Additional Inherited Members

- Public Types inherited from GpgFrontend::Thread::Task
-using TaskRunnable = std::function< int()>
 
-using TaskCallback = std::function< void(int)>
 
+using DataObjectPtr = std::shared_ptr< DataObject >
 
+using TaskRunnable = std::function< int(DataObjectPtr)>
 
+using TaskCallback = std::function< void(int, DataObjectPtr)>
 

Constructor & Destructor Documentation

diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.map b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.map index 92e3d751..81983cb1 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.map +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.map @@ -1,6 +1,15 @@ - - - - + + + + + + + + + + + + + diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.md5 b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.md5 index 96b7d63e..66190970 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.md5 +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.md5 @@ -1 +1 @@ -a862bb140e7c62611e10a62b2ad6c21b \ No newline at end of file +cd3597d3a0635c422ef7636c2a70d16e \ No newline at end of file diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.png b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__coll__graph.png index 8d8c0b955185109cb3ebb4e32c2cfa87153c0968..86b5510e14caeff605e907326285f6fd88607c02 100644 GIT binary patch literal 100580 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 literal 19647 zcmcJ%1yok+);9bgibzN!AtI8}AR!>22q@j95)X)iNP~csN=u1I2$Is>-KiiY-6h>h z=Qr2h?|IL8$2spe#y|f5-`iop!&>*cW6o<{*EN@)vf=}L94Z_X3WYE8P*N5CY)7Ha zabaV@-$wGeg5VDx>$cE@x@C*yJ-lC)HSLWy5OiK*+?2opJ2 z*gZET(R7~7IJk6oDEnMzmU>gab#`h#&@cL^%p#ep7!#Gewz~TAj_YBO&InV%4t#&Y zc4wEJORwtgy?bwEg_G7|#au_SsBLXam6kKp(mqt242~B1@_%B#u{4nVxT6LyLHS{v z7tY+m!tCzaD8AxXTXG4<#5}?V5-%^pSUz5MPEO9DTKC$D%6onC6R)P0mi*GvSi*K5 z&^O))&X{D7KrwpHHF)7th`#3Yl%NX;44j^y_ZD^D-HfuFtZ~KRV7qzqQsJ`>RoU9{ z@$s#by-BuY4u$%KLW*0@@XnvZfM4?R^4+=m;!RCWY3Z#a_imzvTo3ss9B1(zot)@| zgeY%>VAIjjVPCpbpP`ZYt5eYZ)Fn%&P?}QLbZg&@97RY>e6EE82N!p1!~Kl9H&y9@ zjZHz+>zoVPG{M(I4Y#(o?Bl{SQc}EygoO*Hrlwx^!h^PM@9gMEOM8zU;NjtEKYPYx z6p(*}26aKtNDpHpsbdZEAY+ah?H&t(BF*{QUgO z)uH?+j{|r#RaG0v*|qDg($IYN^12W$>MY>AyGj|&Ym9?gcjDyexT$B^LLsN9`0V@l z?>N;dLZb^uI@~Qoi#=a;9zMhttgfhtT3T5t#JqUfs%v<7IKQmy_PX_}R|1%I@87?t zFv=B6&CBDSpPg+SDKc%WaM+e4s>mLx%G*WCv zN9@OK+(x>8a3FK?%>HnDsm%RMjF^~sbE+P5dv%!P?c29$>FF3K`Dg)rtz5n4bhXqE zAt4xof`U!0t+U+;_pNMg@7vk&Q5Zdxm3^^1nxN?-?qAW?-o7?o*b2)aDx}Cgk84^GH+BcA?#Z_Xvpx6@m>x^aQY|X~T zrpzfbGxM`D%Tqy%F#{bP9XwQ}`J;IKg*C~vUbM<;>*{d@~ zL@p+`qJrwHbl^-ZNp6+)>(|1oYildjFjt-3y}kF*XgUfbVs{J-3@bZ3Nqc+#pFe+6 zt=7iIYU+tv5>9p{a>~icNlHo4ad6;QI&93x3JM5>4{iSW^CxUz@Iml3Iu;geHmw{< z3k%K{FJ2H55xvdGVD&rrR7}HiKeUwe?cFzPqoqcJIlBADf4V|qVgi|!VhtcBL<(A7 z8_3lsFf%hN|HGkQb2Uc9VSXeKHX>|S^}sx5e1)ACWwm zH*el#;o@pdmWv>ypzwYF9_RM$+jWzZw6rdp80%x@9v?pvuZ|Ss!d=dzhK7cwS^}we z#2Cz*_6kjW;ark)Jo4OG8JwMKk3i|U-lU+R37nZRd}?frUiz6VyR!0Up-V+g4b#@v zmV%1v21G3)BBGsnwSiahq&Qa#zuT>k2?^NzdidUn9DJ@ zwl^l@Tz7|`zwC~`_v6Qpfbz1kyh-=7m}tE{)^8A#h7+aywIeunBh%Aw{@L6#Xbqy7 zO}TRAN+CRQfntns{;Rc-d?DNUyyso9JS`L=?x%NFh6|Z*adUScW}*#U#QZC?8Y!IZ z`P1+FTxRFx{m9dz{pb-DHSbgGTRc2y*P~rykyoo}4xI&-lVa;TU2)cO1E8<>dOu@qbDz zb=s>*L{TEC=D%}YI`e)TyLq<;h zZ$<`&v^?q&xntb=j^z0GH)6Q>bo}hq&U>21;zg>jUcD;h`l=8uu-KQbR> zb4uweCU1l4(O$buBMuHulq;pQwDh)4T4YgPx6uD5t_ix{z$4p3NR(5ds zl#`e!v0U`pnVg>f>oZ#8d?D_Z51(~BV??+zUVfHH$kS>3IkqO)GEuD+60&tZIr*m` ztNB2My;=IGd$p)Pz?C>L*Qjc>HcfSPi1aU-n#Wr!H!e4(sf?6fwl^Jl`04w1q5ZAa zr>MJ?uSyn&d!;)>RXJjWo`3J+x`3+MjS>y#I3ntbU7A00Syt823HV}Qpq3~sk;R^oCpFal^Q3}yyKU%Uq6Dnp9CJ8@2R)rH@ z_dOj`?9Aod?rQlP|0})y;~X(o3!V30PM%Ur+;468{+)PjG&&*vO+#Yw?>})3Z5j9g zRhSg*V8E`MOQ}AaGg8SFl_~uh887mzrs=j<1}|;Yic_ErOozQ25<9MmzJ4D>b5?Fc zdQA-Wch_dz*%uX~+@i@r{WI@M2itt(cGAU_+L0$&StH#-{sPY1i#M~fPA|!|2F+`i z{Gf$7EOV93 zUxch|nf-mY*3{J+H@`FcbXS&g%>SU|JfVJx^ND)@wkHyYn<%fxgTE0|XNz5>45{f)i{%nhn~r^H>c8g)Ml6g+xU>C>z`hE}9x3sz@Cr1aGBc4L(I+8m{xR;16jdfFhn~L0z?e*T^CrHZ zpJ|x`*A-NEN%p0Wp;C*3N`-9?`DA2euTdDWaJasGi#b>ai!?EzJ3TiSaL=P6(ddD# z_M<2a6b_DTPfhjbDCaC;VX|-(7KzJ0u-B^*Rs>)j#_2c3z~itD`ZRX z^5SsYEoM&P(N2({lr=TqE_6NCwD(l}GF57B#!5trvT|_nOh~}^`0;07AKSRqbc1Wr zi{#)zeTR>Z6MaSe!geM?3v6$KJd^3*2Hmyp%nXbwJjQCr2hUlbJh{4j^1P3D>7_QR zuD6%c&o6y>-COhMPnWu*vxA0%Am2MhpXT;<%B7_XW7V9JJi*t(uHPyo)YI!+UVks$ zy_8pVT0w$`x4l>sE-mbS+JErAvNH7e^J7%ZW&d4=YVA$)H10n!TFaGuia2 z(voOzXWVzGk(kVVI5^WVvp9r7BNEli_)8cz9ZXsfTxP02fg_8a`3Xlo?&6jylZ0<1kXg&w7`~=V^?!S&L2;%)Pklb!Gn_K{Yf0` zin2`vc-G3;~J>@4I1p$1iE;IBPLbbB4?$`C4w0@WsI%2Y(@1g{O zr#xR9eF)eJX<4-%Jqk)y(l;0_5zQ+!D;JO38`QtR%}scnewMeOFgLAIBycy^{UmcZ zg3cg-e|f?A!nwBvM~Q~#C@AgkNl6J%n3ZdMd;OZpq`!@rj7(>FT{e`@=9Xqt2-AtY z-piL+vcw9$d_DxUEuU_xsTX9CJ9kR>CjJvz_>+HYZ}+%+{Vp1vpgLk}ZCwvlW!O(m zqnpk#>TeOi!HVAw2$tJ=Mp9cxr~cbFY|+=-b*saLAyFAsMC+{ql$dYtUf&XY_Jbn1 zSU;k&Ql#eW^yrzHJ`v!dw9@tBGd#Q~yRE`zH63lY(}U-Dl)UEw{_jI!t)i~(sg|l( z-`h*FGMKBiTp%GKQAaU*>UJ=9CAlOwJs==}VZixkl1!wKEz@3E#{2cl<~U)VUOe6a zLT5Y(#OmBn|Ii}U9uyvnBgJfD`%{>b4<6Y5sVFNm7%niT0JI4;{u5nY>*Iaw34m!IqJj~mXVA2i+QgFv6#c8i3+|NPn79kpz1Yr_E~+T^@Z z?E?_~Vb!zd_hb}2hUejmueTT9>bswip}6gr)t{8xT-c~R6N7YnM^qF8)fFpxAIfB5 zhjlz$T-^PmBYHMAf30ZLhv;ZrcXxLS8u#O^2Yx$9T?w^Dve^9WM76VO#ANpogJsO| z$q5}Hc6@5;MP_E^tjDE_GyW1zD@kP9^cV*D`T14z)%Gjon03S?By*jkweIc%CFYOG zX=%G;Wo5M;9dDE1c(IF%$MLib#ozN70vxB~<|YO((+Fzyrzq`v_b`Ar==u7f@WThf zbo0lL9~a_Y;mm_FsD;9)(Hq~$&CQLSnb}9war4c={yw+3xVYaSR4sY_SGWoa3V5Ng z6nioq;6Ti9hSXjLJ`ugDzVqhFYsc~*?Sa=k58JU?*#X?WN5ek_8 zWY}Hop%0IWY8x9LXB@DGd;J(5{`^>Pywxz2Nx|^e^Ujx>t{;kzy(gHRRv0ujG@5ht zs@p1Ft+g2%8kQ~0WvdxAx3m;6y=-}ZJL_W}0|Ns$Y88s^G25fvH6v7+_&?YXzrnrb ze*d+x^3ZW$fhMS3pgMSsP9Nt)?e;2(Tbt)TE)8-vhf)Nyj+d9WY{6op>N_eA4v0-I z>=<0ZlkcI-cqkG-$$B7&Y|uL2%hp?aA)r zuLA5k=#XMX`$=Z874<=&sfOXOQ5eamuc$|`HYR>-=wK4Emz$=u?@dO!erHZ_3G6!_vg=_H`djm;Jl34&NO~r zU3JGQ%7d!?)coa3Je1>U)wDiQ`!~m(`?&z#$NY+GYQ%s(d;jBye7X61$s3VTQL^$5 zuQX4wLw*mW?;bThj|sXebWTf4EAsQ_d)EoCGccS7vI?bMqS&Fph+gW?yaJq%lm6%x z_uGa`OG|mBr9Qv~#ELpIS-X9V%^4yf?dL?T^`( zulf1JloTu|UdJw6P|!(DQI*k#qx5QZ=q*yeZOt@4l#zi*cL5NpColp1(c-+k#Bitk zz-|dxPT+++^sKA9YqvH+rl+SDDef)?b;^g>*r4w2Zt1;Dxd=`QVLO(09v&gl(f+_a zvTNs|YHDio^7E(ry#oXBEyl{~%_%NlzDyx#arN1c$hV(9k$#GZnEjb7hmD6PDdlxM z=?&yo3mhnJ%ZWSbD`^2FE>hnfrvlOO6$TE(8aE%Gq^c_MjT<*eA2FN97s$234Uh;I z5*79So(I-F7Se{%QEI3Ofo%F1=>S_&yT(Q6rMWo~35f@UKx-cxINU6poZf|nw_1W| z{7WZZDNB}PJ9eJ1-F2}e2(|pc;yw~ zFg8y5O8$SM z=rB;Q2HHg?M7tZ4!L7lxvp_feO6d=ei10x-de;vOkTWZOd6RD1PNSk0#=;)BJ^VaQ zX6&-=UjCiK!$S&g1Jrz1TrdfX-+yN{cCfK&fS3g(hGAJ{C8hn8lce_5WI`bN6Fy~-gepN20n;kq^GyHF-NzuOf-0(JBTlr>Eze>z(l1!g*)%v z=mm|Wt|o~7U#tJVB#{tEQepiB5>!%QqXwZhpBN<7OpYTy!baa|sYw<;RGZTWd{WSG z{Yp&Xf6?~{E=jtD-rC-lR9FAh*V-X;mj>T$katmD8{5?4AM8k|wAUO62SBjD4Go2o z$lM=@C@aiw->JU@1&@|m8h!gfM~LHPWpCf?g?pvU^!G?af9Z(HrpS1*3i`8vITfUq z_i*ay=;<*nEG&Q?x_I5$O1S0*Jw4D`k9;L>$baU&0I86Lg=MP0CacD;XUai1h@be= z@hzu+kh5aB2WDrT!bSnWm*?qLzLIergLF(zMa9}9ovT+p1a#(H30JP=Oi9d_FGy<6 zJtdh_p6mLR{#Vh}P~Y{K zEI!YAsl9TehE1i*2#r>;y!PP119jkVIXJQ>_{2PVw?aZf=(cW)iqh=v?%Iq-^b7J( z9V_mc{t)s9<{8k$R{cfVDHsgP&71YGo>sqq$&|y7kx^3m!Qo6ODk6;*wDf++AYot- zKelVUqY!{q+v`e20uXt6#4NYk8_>d62%=>+b2u(8E{-Ri!nB3YyIOwFwWH0<{39bN zz6jgngolS$jYJImJ#P#a3ts$1&o-|AL5 zhJ=NM<=d|e@UXG5X{xC;npJ3PXpmLD-eFw<=;`n07qX}}T4Ju_;&KNhB=q$3v^)!G z!SS(6i}uO#JY=Z(m6i6Ny}ddzGMA3FdzBC(R@>gbSap)^_xnx_8aBg;DyPleUCqV4 z@%s`I+*VU}BO@aXfGGaf)zu2K;G}es>Qwi2K7sf#A^g)vnWYJG6#DsdpE$R}bUks& z8$@o0OUyuk*MI+hNg{y|W=#Tsj>ULI@|4IuzQC4Gi~d5lZ?lZmgoTmqSwaLy<+@Qu zcKz3MnUQGmj}8x8ul$qwSDW6s5hZ0LyWPATl<@N9OZNO}w!)|g%ca_)pQjZF!W9)2 zB_$^xpnk@8{rX+g6Q<<^Yag^du*uhjg{hjGo4>WSHNYst1_UO5x|=4S*uww}#>%WC zd5o}tUsTr93xdrB)Hxv;8JX;gpb9}CK|6pf6>V*75fKqU&w?3z`cyT^XFp|+s0$o6 z^bov{)g!4uMApeeV8O$P_xk0$Ecocc9*ptnUvM`NM@+X7s{oyb*^m2CjY zFDlcy>I7iG&cG~WJT1%AhoPqG+Mtoy%^djx`yZoCp!&c_jyvI3#%#V(D=%v2^iior zM@KIbNyy1t;Jj(WB5Logj}L#o^}KA!p6yL3Xgi2-=jV5c8i?siIF=hF``a4V3ArIO zltBE-d9O3_+V||vojZWh!@|Q0F5r@LU%YtnnT16sV2gIp*BB2=Uk>vM0FjEQ1DCJe zVJTF?@90W3tjyndo1$#opWgyyRttcp;V(kAWvw6tWLzQFncFRHwAq*t9mvpNLzKqd z;{)69$jEP?R5Vp`h$V&X4C)d9NFk@8;n;fQlzfaoo^xH!c5EUZ|B;(T zOijQ`p2{qqAt6LiFm266=nG_Um_7~LX>Ta~q~9}27B#zz^_w7&ttaAvo={CB1bG;u zZ?pfE#_@3)L_NvTuboIMS$?tXd+H*0Kvu1rAY@^A{j9r;*wq*ZL@BP?<9D^EhyK*= zWmQ#GGUfu$B;7?tzn6Ztyy-qZO7=@-ZVjI!WPrwdi|oo3ALI6LI(~jKINxbGIrFl= zqZ4`P4@dtNWS+#UYqU*%DHSY|6s8VGKte;qIoN(Cqa_@G_pJ6e(SW7-)5lu^7XJm3 zd8ei_qxwJn7F>WE5rr+1WJ@z1dYW9vk)w&ymd#xjGo5jczmz6fds%@!S<60-Z%efM ze9?1I&I1W>HCBlg61LEEkT2D>moMXS5@K7;wUJdpT}_C6e$0XNH`WnTk`R0oH3g}m z@ru67TTq6$Tc$wChJuXyWa6dfKfC}fA3l9*>L`VSH==}V`x6GZDp7to5k2z+fknrc1 zf07RWg&fjl?$Z$^-c;uyRSo4ts^Zqo-@jEgpJS_N!wIZ8TxJVn&y)dv>38D2UEh&( zR(8A2e-TO4{P7`!;sTW8vW?x}cl2{Mf$DyDM$_)}9Q! zY-fy;`?|+IBXYgj9SYTkAD?fPw{|$`pF&#PYN577wli^8?ZJHX?bq8Tg&YwkoPn49 z?*Q0_r2^5?12!)dgv{2y0I&pZ3klWt^^xB9#;fno)S`ZwT2*xwqDm|1;wqY&SSTnD z-ue5>RXgeG>M~*-(R27{`po_M9%>MfP*6Y&5@s{hVpf||_fU6bWpNOJ@Z@N3c5AkE z|93lAxoPp-+#Gr+51m(B-0VlfZ1Ca*4(i+Y?{AZnjjIo`v$9OMYsqDe(VrpqI^>{@ zj69Z?U-E0D%2KAc+;Kv!4r{fj&IHfmN_7(y0AcJJrtD*oIeSgY>!0P1C z-fz%-Z`^^Khv%M^l~r|#xw*NDva<5V0i?*GkrCE0t;Ca}UG9Lcjh>6=&re0@yVV25 z;zdL+ZLrv#07B|QijR-aZ1JETC>mdZi)ZMmNlkt3asQTX^=mS~#2uxEl18TH+P_Y& zxdK%j&hZ#oQjmob!LQ&P82R=s25<@8rIz~p`}^0S9*rgkS@!H?!+j^G3{q8(($iAq zN7Up_wGYH0G9rj!aPSJ0JyMdA=P%QW;X#q^_iB54I}f}S7G3mW0U*74K*6RMC)Uy7 z4DpbHg2Ld}w~!1SnM9rcB5VR(%QbI1@3Mo2I(6;n;2<9|cV_;Bq@1B4?E%jYZ6Y80 z7h~MU)I5fsO%AM(d{m7reJf1Y&=hnT1BQ(f8m*El90Kev%Kbd)ff+%`@fk*{5z-qv zY0Hr&#K=xlx0hF!$^7esVerL_pi4^dC5={3=4?^CuNg*(FW`|fgqbo@iqQ%1Pn$rF z`tuqzB=~nVTB+V;1j(2`a;A{>%|Obo^k#1_*=@hXM=!PaFzQpkf#tauK3yGUr z2$R4K;R|7ko{+#Ft>01aREm;ililw9`4gcei_8WuD=I1?)%5y!r4LY4pr~i+EmgC_ z2dU)Xg9KM^zuB8`CIAn^?N_T5aDK38X=!f@3(vsz1@`jRFV48O0~s~bX7tc|GB$3v zV@IgzKpv+B#jzPy3pVK+sGRCYMjp+tq<@KH@zC^4PKQCU-1o=E4f{iqZ1S?2_tD+I zhORFPkONmmsCM0q$OrAog6Wk^o^h3_Kw0}mLL2&qzot4(Fy$@pqm)S~_f8IX?#s&u zs2)j%HA-H~9xn9s^nAnP4eZJB(d1dn_EK-imoHgGyXiKO-@fvriAW;8V4puXR^=4x z498K=kl;G8-*rN4&94s#jt^II$Bxy74j<46QmWL4E2`8Y8e(8y;yAEY6-A=79@<=L-j!i|7EGVDo|LT0VPekDbj z7NGS1M5U?M2`7pYmnrrazA%c5(}FQWyZSYM?veHj#9HzfNj0T0PH`6=Pb^ymudt{H z$~sbTZR9!cS*$w&0JUhmcwJ@j+eMAbBu+(~>?kNk-%9zDqhV?s4}LSg(PG{N`wI{w z(wds&;ebMvqyKuOwmeiFpg$FWkC5j zKlrp~q>)=fJ@9WKoox2jx3W8s_8m8>_qxGBwY@f~B_pavV_r=r!GZSk^+oQ1QFT~g z{b#;odC^-vHZ~S~94|@^qL=r#X3OlBh$U}?sQSxjNIkanQkK*H`0-=enGXE^%WWy* z?!# zB6aOWf@@QuN@Dlm2SbnOI1`A@P9QfZSg26~X^YJJk1s+bA`a_Wg4Ib$=Yb)z2siG{ zCgkPYO}s^V9Lvbb8HDlS5QxXYsg>Wqe^a2q=)s?E9`PS>B&AV+!e?G7L!p@s73tt> z9k4^FUUoG$daR8U`#b+t5dS-jP3o+L4K}~H_zjG7LsRu0!(nV%j-|~MMqoF3mXni{ zm6-T$cxWgO3R9b2K&)(kTuF1|vi2m$f&r@K0|?`RQ2YuA$k!V(z{~ay4nDtl`RY_` zVPT<>wYBxwEYN&dZ=j&qdQ=-i|Db@YWt0{4)&v z;v!gH&S7GL4aWm)F7+K9_^?|+ra7D-)tNgf-lBZ^MDH<7b`uy5(IzIoQ&R>mM{A{H zML0(pF6D z8nC^Qz+-?CQB_@Cu3Peup+QOf#1o8;fG~h6)Q%*+P9dj_0akzn~lO#xzR3Kl8;Mf~M z@&RSy!-o%laen9C-krD32XeUP^w10zn%2w9%W)ybVRPWICD^?%C@Cq&?#vi3uB^-= z9?%~@J`JZ$$t>e&H8;hvj5jOfZ?SV5urvv2ljbL^Ozua`a){_yrN1yxz|)* zpD(VN^-QhIerU;+u4aj)#>5Nn0MRW(K)F7VP27l4zs*CR(=aow6eA~ zOaAmNgn~v*_2*?~Fj#)DHbq=tWMp2j=Vh`UJbCh^DM4G;elWPp`CQc@fjm_OS)y2& zg_NJ4A8|xLbyd}`8YX7uixAb21P)c3va0Gkuzn$qIDi`fV(QAQXStyOO-f3N2P6ko z60j)OSy@?8C@|Q;H>C?t)nh5*?zJQn=?AWiSC%&Yfql{pelfEtc<9$vlF=sfKx&mnvR%_)&IoudQ?_b{F4g~-=8lN z+N60}MF-ms=wQq01$=yb9>XSIEG~LX{M@*zJx?xp(C`+$2OgKh7fJe+=d%eRUE4*K zOyJz}`t%P2uRo57nT&9VB;z4#d^Y2fByrf{;LQi_TQgGCKTk&7XL`<>bH#1v<*SYR zFV_l0B$3FdC+eqO73JsGn4#W~31vdh|M)yMJEEUbY&m%i^rLW{%ZdGPp?7T!zeg== zt4d$4PSMY=J5)Ek8+4%@de-D(Rq~zpjkZZiEt3|;>>Y?&gTIPubNICyb z=b+wzwR5H|jLi{_F>Fw(V^!6WZ^yq8{#z+dY_2BH3_GwhS0qi6HjwLqATMtNQZA9P zX-*9nKF9C;+VS_Z3FcoF1$!XK07FHlp%S_DBR;a*(b_>!dm+sA%i)3xfB7fPZ2z8= z4|+kJgAf9EK=%Zes%nDIoKuGRW18gI8J~Jkj&C5f;0(A-$6^)bqvd}3F|hXJCR+$q z+yF)EeX!Uewo>e!5J$aC_*PQO0Go&Gw$s<1gJ^=V#T5#34&*`~K7yN>m0f{`?=cD1 z4~U8_P9Hy!-+S~iQpk+Z!V*`Wn| z^2kxVpIyS?quBtuMtcX|MWg-AX_MX*e4zRnY=sK?);#uechQkhxoKu;zXf=ImxVMD zN}K(iLH+V2dxA!w__09zMBoPyxn-|+GMacd#w(eNIZTr@43CbE?q4UotE5DL;J#9e zm?pZ9RW-h05fMhm`&$$uuh`q#+E9xRckGS0guhbOJYSlu6*q%w-9I?^IU^$@`<**q zE_q3W$HjF~7_oD6e>gZiEZE+*Lrl?PC);X>i&|4xw*$U;`*vi<=UWdFJCKY6QfPQ+ zXydgzj&(rGM8?I%HSuO=XAc9zjPQWDbKg`;2_OO(Ld*@IiX3hDS%Y19}_wp>_LK9T&iZ*ogh~sR%`0Z?gd2`Z%g@s(v8q-{Qr{$EQA1u2=m! zAEK3wxH$-njS87LInN{#K8%-Hd+=zw-&X)l7^N*OjkPxh(TEbYyE%Q|;xi0&Hsy~_ z5W7o50qpwqEyz<8C?;Y*3Zsu`8L+*iq@<`uu;p^-JoS=#37>x1_UUHT5iu22+n2vs zZpZ4S3PSR*tKMsqwfZx8No8f)%T-`5PT$jJAm-1gxDCM`3kwVUyT4))+Eh>>YZo=F zkZw3Hr{NL6w)`!G9%y?+?*ga_Xrk;WV1IiKGUKd8Ql{LMj9d-kaED1(twgFJfXT~M z_P9j7y}f8l%P!}*Wlclz*W1|l z?%mTaw_&ugwMFu_uP?UWIb|o;O9TY12;B{#CLt~DVWO*UTFpQi$?>;u55I^wTux3- z9;$M>1sp5ndusk6dsu2PIw_yOc#&RE@Cvx#wZUi)7E&myd#B7k@u!vW@)`eqQ~yzZ zK|vpIYy&U^*KvZfK6v;ELHVn3J!)ueePHPM_s#Nt#EMb_k9F)pFm>^^&m` zyjL{T)VP3nz_LdGa4)a0&}{R8f|=St{D?yTr+Y1P>5u)^78iYi#Y8O5a9ZPBe)}~^ z|0v}G*Zfei*_F}-BHETENjMW-ub}Reyw{=PssMj7n>z0lx6pW-7Jy`&?y=GF7fC;B zA}3yqzotVvwYZo@CgnczQ^~yd#xDDa9+e`WhqRYe&u_b$KW5IRw|nrY>?u-A?&*#n zK(ho7$fJI(xs@5F~N!<`0MLEFkZgIYWT0| z+Fb@>nZAhcY_qBGNp=t`rurSr^&rBe4Ol1Jb09r3W65s zRO{Wg@5hRae~oDE;Nw3&15dE)yIYqTSi5_|R(vsf9uk6Ifyo$JTNgwQ-=H9AYik}b zVB~>1KpyNRU;_cQ&MYC9|duEJ|_3|vCgyZ_)Fexa_t zj|W!IzH$79&^P%lT9Okd+ZPt zG@m_ql=SW#2`WC1?=8$oTS+sJ5)XTQC8ahuwQ*4o<)2)>=(GD`ohW1$JEk!0yOOx> zJ#ea-40e*X2J5RiIA9ZylJg%drDkGdFA}()okE$JQBir{F+MNt9(X3#CpwxvFXcpX z*ONJ{|C(7Je*)t1w|i(64_f!Cb6_}hJh5lSySnJ97&Fo{A%&}~tscPRJ=>a#ZaA;C zF0k?jbp={8ys%Dstw_nqDs31^2(I0cHi&22djh{nCf;~b9hKY?OXS4D&I-nm!S3Qr zve$d3&+`JrTvxll`tZ9Q`dx13qx6#U%E&YW)oe2Ic2D+1k@YOrRFj`sT1JM-{Vr@; zxc1>}FexeNC&S}?jGdGVSQRr{v%F8rtn~3k>0Mw{i$nRDR`zRn%&CX;PlbhFz44c0 zu3$~6hx@9ksCenSmHS;Hd6L|D3;m8wF|OwA6)skdp<4}C`n}V?E%gd=n`!dpI(CfZZyrCz$-E_!%AQH9_=@{@GzfTX_Gk z$xo!%=i8QX>2TDhl@eJO1R1rmA9=y2*}mSCaFluY5a~D3sE`*%sPcabhKW+Kcbv`v zuk-2CCzj-DD5vQ-ITdf3^M@A|c%)$=qBU zd@i7aX5>AnxHpF`hg^@q8L;jc3}orRqSHfzm-TE5{_12cEht&{;?3p)|^qKiuBTC6=bij0GZq2*6I9iBz?V^^?pI<~|u){-}u8t^v zTp%EztiS>a#Q=0a5O(6hMS*$)x$xyg6(u~EXL2$lkRd+M$ubM9GPj^$#4v&NC^T|` zi>4l$I;NJF-{;nzQfcKp!9d|%y-f(w={|@|WrL2+&h$VifY@}u^3@vBrRLz^04f$1 zcqWFxIx1i><_n+#4G0gsob^ zf{mIZ&b_(fD*K;L!Gh>CTkG{9~WI(Q5wjk+j)v+inVhpXalS7Cak0Xn>m}pzv;{l@T--e>F86rBDKIv6soVU?>e+6A-91nk2DRUl)nq} zUkQtyf~|;&61H2c6NSHBgw4F3TLL?%zPb4V6B83Q4$eDR+s-)g;4fdUGB7h6)xWy{ z%>5g%Fg@#v)wOgIKi&T-ISQ_%1qee}iBS9?O;gb91Zr6j)b|vyCwzd@KrAd!k3pPj z9W!H6iVXlxG!cYt3URkPkiHmG1~q~5gsWk~rx1q}&@`LVKD0NW7>2UmX4GYWlMY-{ zZvpx?fErd(QnE9!wN^SAKIGr$`opKnKI24eOP6`7-$@13N`$6`c!+^=%noHzTZ(Ol zAF0c{&jQdGRR>Hy_lrIj#6sy$&hasFvZWo*2a z_O#%_$tx+Dk0sGJ0dvM(;3XIj2~YsJu~5)P!8havkNZZ8+DO;Q$!QTf+kOau1rz=B zDFe^=z(7g8F~8T}qti+C^gNG*0swA~TQe6>Rz95Rj%2Nu4B&t;lT&^#f^SiMab$-PsIdlzIC@b?A+GO?Hitpx)GZBD;mC@Cq~ zFoVK@5BnK>NkGZ4_6cs;=vO%+N}a{5svS*O!Y*R?1YRKzMB6OAYAUF)z|GYHOZAs3 zf#Q1}LnW8&gNBU-)FBVZ41s_~!JdL>8fj_RgSq;-f@dJ~AnFQGyz~MB4hzQ@&(G0$c(M30))#CMQ-S(F=b2s<5jD9UF7{MHFf;h3u`WqqB!OI0A zDAp$H8{~PxwgQM32n{QUoLSoW=YTA=87(X>mV&l8FhgjjuQ*QCVO0I;6j7yRi-x&P zOG6pqL6un7Wd#l_k&UXx%3!F#8sm{Oth9pGC#px&cGSpqR-T%h2ZEi*02oXb4h|`ZhCBfC$13doovWF0Nc3gPCsP#M;?2m)Dm!lnv=;E98EJx^%Kg@brk%eX z>^}{dNeIiOmk3Ro7e%;Jpf z#Kd#(L#@x_TnDDMM_>h~XJR4Q$uY{n!}@%n%V9z($g1P=5{x$lCf>q&g{_ zJ;S27aibVXVFNy1Ug){Du*HdL5kwkFN@9SJe-C&A@Bmd=-uj?%%9-op4nhO6%&^f% zN-cvSC_Jfrg%3W`Cr7~0)I$;64O$B5GJTm!nR1#3Rlu}D4nnF%yNwB&^z?Lu8w8e^ zsmD99y^rw`O*kAhYLJd!c?45e(7fS-Wv<#8c#MsU+X%Qh4-C|B%oL|zHP3CJ5V2`> zqM90-lCX^MKmfn!wm*F_XLl7CSx;bDz@Utv1M#zClB2zig^ak9lM}{~&bBrQ=v+Q` z?i?X0X;SxLKS!MVY@i^tN)upWVuEL=uDhEMNQNA()sauee>(2LD+KVKAnyfOK9_yj zpB;bva=b4j79>l;$6COLMAe^D^xI+Ux}x!^1?t+{ae*$|KUjz(v(O^9 zPCtTVLj(-=*23BvKJ?K-8k_=Dr#c!5&FA2Gdk3Nqc+u3?d7J0{fJ0%SZQjGfqnyGJvE?i)Dx1NjgQaIZ)|b3E(g2-dVo#w0FnWD0${hG$=r0C*FI3wM=JI$=0!s| zc!=d`tlX9d7B@?`k{ld1V}3Tu%7mPHRlWcnjlj`W_G*pF(8y>D<_EDCQ710_=@MVK zth-;trUXX=yx)01>B>iPV}PTq5jJ_*?-RILBlx=H!rAY^#lSnoaQWg}t$H$ol6*J; zP=Y+v)m!`R1UwbA`C|gjJeN{gR#pcc*a$wldl!XZ8VH~DLqlaf?S1@Ij}w)A*_T;* z2A9Cf+4kSBZTQ=N`!7C=P}LWWFM@HUd|A_sqSe|WK6LpCD)Qyy$rAL%3p z*3{*HYfX)P2H_gsQjl#{d9%F=CjT#ReY#rMWd*A-zaG^B1VB0{U0x0oPCm}Z(EdRW zK{zbJjQ_oAjyL}R+!RqZrUCO+>DxjwTpcYX08pKlmWFi8BX(!V!w8Csy!HGtP(%nX z>~(kp0x+Uuf;PrsUjg7H>^OprN6Gm@6SmL>re!$!DWg`Viv- z>{h5dX1)fCA-E6GMWEcc!NZf^6OkL8IiA7`rgQKb?m6~nXmH=U)i~4aAMHAf1QF4%> zZ0rd_fP>~^QE3Q>Y5!NKk`?&C5WoOp&zSTd07Vd8r$H`-yxxfLXb9kh#C{$Hz{Ci$ z=sxW5t<~XMc(h_y!RHJHlaJcc;Od8jg4j@8P7fA#QU<|4`yL`SsLyt*LquS~bp*>u zdB%H4=rh0#vaqsBAQ>6_?RId|^hEGE{y_QwWA@!@Cx8b*koz8<#oI*=c+P=52dzzw z(Uvtg?PDR60(?!KK!dA;0)ZBg5|FkVFx*IhBn^tuhp;flQr&z&6b3uX{RmC~WT0!*x3~M7 zok2T^cF9Xh1m{4{&EnE`vE;ElG$tw@S_e!`O%cHy`T!6s5pYV=Fxq?IHi36$1c7(u zi>Pyno^}#PVO}2OZt|UQQ;^4@)+^r#<5YFhhN8t98fN_#fRHY8uRU6?ghr`n)q~(^ z`>T+M-{c)18~aO`=5 zs#+0Vy>Z)W3I$prV#P$=1)vI>_YXuPqij451 z@w@kZI0K;FJP!j90f75@n1d{<$^z}jk3oZ&0t)~jyomijySv_CA_m~I2`qZLIYQ$C z=Z#d`@OB7RhtB{!wc%|i$SXtu$P=A`yMyrR)d1M`7T2Iz0GNhLVB<#G3*faZZ{S4{ zdhHpmJItZkr-PGFVX|0^Nnz!61q0!v_?~ zWH5&YOva1?QQ%ogh>u6LhjZMAJ&y=BPoF+z>C0gUErNp2gz&GDce2{~3e>Q7p;Z9- zMyBTGybux@7S`C<__ot;2C(p#3jlFRL{5%qGVD*v^6Jm}&EUm6{|57|dZ9KBfYkfz z*RS}D3>Y(y+Cpa zXV-a$P%w}+k=KeKJsK#)8wBD6l2FfIxIo9qm^{(X1Z5c@j{5$7GF)Okeh>zFwdyL&+$L~qqw=er(_Lz_gMB``nx7~@A zXX1%b?ARM!BQIdTKWLA#6gf{Fh-FiL6`Iv}KjSfl`Z?94n0{bb>fNc*djR+ zdmDX*_vh$DS%a)`ns9cDqS=rrTNBr(5#xO#cCZlz*6ZqPF9o8zX_orRcezJPp3Yg= zh7Z4dmUF&q;ST}HvTemUC;URyS(JWNXRTj*rEhPZxw~0NeqQEBN2AT7R@y-6G<8oTg=`#QN1-AZ%0)#uq-vc$~BPzfWOgA-NB6V8sn zhfyi6BcB-Bmh5hX$tH|j%sSpVhhmUvFyMZZvoiEjAZ>6(EAV>>hfcYi_5>|uZS84i z-1}BT9tv;tx{3AFKI)3@)&YU9>#fjqzHPsj}((=f?^# h9jhJ5i2~g*Qf#u{B(Y#UgEx|)WTX@&b0iGj{U58pB*p*$ diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.map b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.map index 92e3d751..2700d31e 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.map +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.map @@ -1,6 +1,6 @@ - - + + diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.md5 b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.md5 index 96b7d63e..cc810e9e 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.md5 +++ b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.md5 @@ -1 +1 @@ -a862bb140e7c62611e10a62b2ad6c21b \ No newline at end of file +905a63ecc2ff51f66558af84d043a391 \ No newline at end of file diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.png b/docs/html/classGpgFrontend_1_1Thread_1_1CtxCheckTask__inherit__graph.png index 8d8c0b955185109cb3ebb4e32c2cfa87153c0968..12bf1649b73fc40c1f54bd03a5140324dfa72174 100644 GIT binary patch literal 23138 zcmc$`1yogSw>G>LMUa*T5e20i0VPFA2?3=W1O!PXq>*k!X+)Hg?oI&(B&EBg8|mho z>v`Vup7%T7dC&j_0Px3EyxOU5f!fS48u8mB+#+njrDJD(H>hc-@i{@WYVP~ zQ{(07neVWnQxb89$fY*OW~NE>_BHsweq@Bg>k6L4!-t-sX4%wz*H|Xqj#+iw4vnzM zxh|QSn!b~|?H>{%Zf?#Zd@zOP)5fY*j!*4&@P$9qVCTS%6opSoiPc2*SVrbgblu5i zZsYa`8X9q-X1P~lf|HVH?9WadhksI;Sy~$3xN*b$?Bvj5p6Z^pM{HbNAzT=PR%d&A zu#t%gcN5w6?yeEDO1563AD)T5y?y)SWTJMZZGfimy?ZfhBPBt{TFS~lNLV$#kByC~ z4d!YOAN-lAC?qq?PD=7*)hPCNeDj9G+1Z)br1QFpwsuESaxyt;ogKdHP(^OY!pa(w znwrX35=z&$aIDSIG&EFTs16s!SC^3yfSgTU-C11x{O{il@87>K?{ai>#6~eQGaCjA z9e!QA+WkKA7 zcdt*Vmv&<3*2k+_Iy;+omU>6qB94L>|;2|c}=zh`FZ$sWCW^~%J-PyWv-+w=Z`f!{&wwH{KpA1WxkQyLws za~Jvj`?rFcnm;+WvEI?nl3q@w)X#YLqa9O@reD8)dCWA28Nwyrvt4}m>=3SmUoN1< zY|sablnfOW9X+`2!pFx~s^5sN)0U%K_la|_?p#r0`_CVJ0f+VH!P4hpJzI6!Zf?S5 z=1-pz5(fQX;o*s#o1NuAt)878uUYbOaJ>7`+`MgR_41)W(dH=|nX|pIXjV~XMa6vq z*Q4UTEtgIf%`(fmc@ejhm0=x%Z)JMy#OuDrh=FS9>aya_ z%gDg=@$s>?x1TTh_~8Q~Uq@S;j2SsQJG<2F_q;2@Z#Ge=DY&KM`EhY^Nri>ihKGmY ze)wi&Fjm*pC|jj`nmX1leojY*hqzov1QhljDGV_-5iGLjheIX5?S@FZC> zjOOM|RB34`et;Nk28(T~td)BTe)3m>!ou(b1qDZ3lk66M-QsBCupGO0aB%Q#e7vS{ z4#wm#ZYQ(UkeShZZe-(S*ExxT*6!O1CVYRX7vsN_yaC+h)=2R`{OHg?$ZR8Dqh zYss++_Eq6^Dyjn5>(7mi4Z1!FjoHFt%s{IvFITg$V`XA$=*xIoVBA4LL`3wtqJn(1 z)Z&q$VRGNAWq#bgFTIk1QnwpS5?y_@tL&#Y+|LEJwzf78{uo}rXN|%lVfl8nyV6}` z^2DbtN2BB_oRLyw%E~^hnxzkD!f!G$Wp?b1kBxEI{1*HE{rgQJA*zy+ zl5(eArlh1K1zlY{SP5bh5(e|_vE|PDY)ni{`7a0AJ_@^1pr%$=gZujWcy-?k|AzT( zo|w2H6U9;wqyE`hdW!0DBMJ@+lXP^v4@))Qv?_q}O3IThDm!H$F&QP&~lm6ylvyiv11l&{|y z10UGl-Zm6D-67=D-D8w8GP?L4u&;`*>X)ozD4=_-3d5^^Qur zm8SX5gtpAAEONtOB#K2gC^c-xZ6Y&-H(Bo9 zjZoLrEE4rXFJP}bDeMqxdy96Ze0ODeIb|J>xMQ-~k$a^(`3g55pUJITx6J?i{-HGa zwlWM&cy_!fomEYPnT^d@$Z1Cp&Rpkf>yi{~U|8vi60It}3SOx^a_*$Q63KiAYc{sF z-#-aC=bQG@!Cu$NF(M@*y2;I5)Dc2$nn+iNW!S5~kk?5e;#S@BM1`orcIjF}W8
c|kQX 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 diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1Task-members.html b/docs/html/classGpgFrontend_1_1Thread_1_1Task-members.html index 330c2b37..1e0795ab 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1Task-members.html +++ b/docs/html/classGpgFrontend_1_1Thread_1_1Task-members.html @@ -91,21 +91,27 @@ $(document).ready(function(){initNavTree('classGpgFrontend_1_1Thread_1_1Task.htm - - - - + + + + + + + + - - - - - - - - - - + + + + + + + + + + + +
before_finish_task() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
callback_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
finish_after_run_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
init() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
rtn_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
Run()GpgFrontend::Thread::Taskvirtual
callback_thread_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
data_object_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
DataObjectPtr typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
finish_after_run_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
generate_uuid()GpgFrontend::Thread::Taskprivatestatic
GetUUID() constGpgFrontend::Thread::Task
init() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
rtn_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
run() override (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivatevirtual
runnable_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
SetFinishAfterRun(bool finish_after_run) (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprotected
SetRTN(int rtn) (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprotected
SignalTaskFinished() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Tasksignal
Task()GpgFrontend::Thread::Task
Task(TaskCallback callback)GpgFrontend::Thread::Task
Task(TaskRunnable runnable, TaskCallback callback=[](int) {})GpgFrontend::Thread::Task
TaskCallback typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunnable typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunner (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskfriend
Run()GpgFrontend::Thread::Taskvirtual
runnable_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
SetFinishAfterRun(bool finish_after_run)GpgFrontend::Thread::Taskprotected
SetRTN(int rtn)GpgFrontend::Thread::Taskprotected
SignalTaskFinished() (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Tasksignal
Task()GpgFrontend::Thread::Task
Task(TaskCallback callback, DataObjectPtr data_object=nullptr)GpgFrontend::Thread::Task
Task(TaskRunnable runnable, TaskCallback callback=[](int, std::shared_ptr< DataObject >) {}, DataObjectPtr data=nullptr)GpgFrontend::Thread::Task
TaskCallback typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunnable typedef (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Task
TaskRunner (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskfriend
uuid_ (defined in GpgFrontend::Thread::Task)GpgFrontend::Thread::Taskprivate
~Task() overrideGpgFrontend::Thread::Taskvirtual
diff --git a/docs/html/classGpgFrontend_1_1Thread_1_1Task.html b/docs/html/classGpgFrontend_1_1Thread_1_1Task.html index ceb72d9c..20602179 100644 --- a/docs/html/classGpgFrontend_1_1Thread_1_1Task.html +++ b/docs/html/classGpgFrontend_1_1Thread_1_1Task.html @@ -83,11 +83,13 @@ $(document).ready(function(){initNavTree('classGpgFrontend_1_1Thread_1_1Task.htm
Inheritance graph
- - - + + + @@ -112,20 +114,38 @@ Collaboration diagram for GpgFrontend::Thread::Task:
Collaboration graph
- - - + + + + + + + + + + + +
+ + + + +

+Classes

class  DataObject
 DataObject to be passed to the callback function. More...
 
- - - - + + + + + +

Public Types

-using TaskRunnable = std::function< int()>
 
-using TaskCallback = std::function< void(int)>
 
+using DataObjectPtr = std::shared_ptr< DataObject >
 
+using TaskRunnable = std::function< int(DataObjectPtr)>
 
+using TaskCallback = std::function< void(int, DataObjectPtr)>
 
@@ -138,26 +158,27 @@ Public Member Functions - - - - - - + + + + + + + +

Signals

 Task ()
 Construct a new Task object. More...
 
 Task (TaskCallback callback)
 Construct a new Task object. More...
 
 Task (TaskRunnable runnable, TaskCallback callback=[](int) {})
 Construct a new Task object. More...
 
 Task (TaskCallback callback, DataObjectPtr data_object=nullptr)
 Construct a new Task object. More...
 
 Task (TaskRunnable runnable, TaskCallback callback=[](int, std::shared_ptr< DataObject >) {}, DataObjectPtr data=nullptr)
 Construct a new Task object. More...
 
virtual ~Task () override
 Destroy the Task object. More...
 
virtual void Run ()
 Run - run the task. More...
 
std::string GetUUID () const
 
- + + - +

Protected Member Functions

-void SetFinishAfterRun (bool finish_after_run)
void SetFinishAfterRun (bool finish_after_run)
 Set the Finish After Run object. More...
 
-void SetRTN (int rtn)
void SetRTN (int rtn)
 
virtual void 

@@ -172,8 +193,16 @@ void 

init ()
run () override
 
+ + + +

+Static Private Member Functions

static std::string generate_uuid ()
 
+ + @@ -186,6 +215,12 @@ bool  + + + +

Private Attributes

+const std::string uuid_
 
TaskCallback callback_
 
finish_after_run_
int rtn_ = 0
 
+QThread * callback_thread_ = nullptr
 
+DataObjectPtr data_object_ = nullptr
 
@@ -220,8 +255,8 @@ Friends - -

◆ Task() [2/3]

+ +

◆ Task() [2/3]

@@ -230,8 +265,18 @@ Friends
- + + + + + + + + + + +

Friends

GpgFrontend::Thread::Task::Task ( TaskCallback callback)callback,
DataObjectPtr data_object = nullptr 
)
@@ -239,15 +284,15 @@ Friends

Construct a new Task object.

Parameters
- +
callbackThe callback function to be executed. callback must not be nullptr, and not tp opreate UI object.
callbackThe callback function to be executed.
- -

◆ Task() [3/3]

+ +

◆ Task() [3/3]

@@ -262,7 +307,13 @@ Friends TaskCallback  - callback = [](int) {}  + callback = [](int, std::shared_ptr<DataObject>) {}, + + + + + DataObjectPtr  + data = nullptr  @@ -310,6 +361,52 @@ Friends

Member Function Documentation

+ +

◆ generate_uuid()

+ +
+
+ + + + + +
+ + + + + + + +
std::string GpgFrontend::Thread::Task::generate_uuid ()
+
+staticprivate
+
+
Returns
std::string
+ +
+
+ +

◆ GetUUID()

+ +
+
+ + + + + + + +
std::string GpgFrontend::Thread::Task::GetUUID () const
+
+
Returns
std::string
+ +

Referenced by GpgFrontend::Thread::TaskRunner::PostTask().

+ +
+

◆ Run()

@@ -337,6 +434,74 @@ Friends

Reimplemented in GpgFrontend::Thread::CtxCheckTask, and GpgFrontend::UI::FileReadTask.

+ + + +

◆ SetFinishAfterRun()

+ +
+
+ + + + + +
+ + + + + + + + +
void GpgFrontend::Thread::Task::SetFinishAfterRun (bool finish_after_run)
+
+protected
+
+ +

Set the Finish After Run object.

+
Parameters
+ + +
finish_after_run
+
+
+ +

Referenced by GpgFrontend::UI::FileReadTask::Run().

+ +
+
+ +

◆ SetRTN()

+ +
+
+ + + + + +
+ + + + + + + + +
void GpgFrontend::Thread::Task::SetRTN (int rtn)
+
+protected
+
+
Parameters
+ + +
rtn
+
+
+

The documentation for this class was generated from the following files: