GridCal 5.1.10__tar.gz → 5.1.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ExecuteGridCal.py +40 -40
  2. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/AboutDialogue/about_dialogue.py +158 -158
  3. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/AboutDialogue/gui.py +173 -173
  4. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/AboutDialogue/icons_rc.py +304 -304
  5. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/AboutDialogue/update_gui_file.py +9 -9
  6. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/AnalysisDialogue.py +111 -111
  7. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/gui.py +378 -378
  8. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/icons_rc.py +845 -845
  9. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/object_plot_analysis.py +1081 -1081
  10. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/update_gui_file.py +21 -21
  11. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CascadingSteps/cascading_steps.py +138 -138
  12. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CascadingSteps/gui.py +127 -127
  13. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CascadingSteps/update_gui_file.py +8 -8
  14. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ConsoleWidget.py +120 -120
  15. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +123 -123
  16. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ContingencyPlanner/gui.py +226 -226
  17. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ContingencyPlanner/icons_rc.py +407 -407
  18. {GridCal-5.1.10/GridCal/Gui/SigmaAnalysis → GridCal-5.1.11/GridCal/Gui/ContingencyPlanner}/update_gui_file.py +8 -8
  19. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +447 -447
  20. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CoordinatesInput/gui.py +222 -222
  21. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CoordinatesInput/icons_rc.py +1553 -1553
  22. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CoordinatesInput/update_gui_file.py +8 -8
  23. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/image_layer.py +126 -126
  24. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/layer_types.py +9 -9
  25. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/place.py +17 -17
  26. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/point_layer.py +117 -117
  27. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/polygon_layer.py +123 -123
  28. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/polyline_layer.py +114 -114
  29. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/text_layer.py +129 -129
  30. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/map_template_line.py +369 -369
  31. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/node_graphic_item.py +305 -305
  32. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/node_template.py +57 -57
  33. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/segment.py +71 -71
  34. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/substation_graphic_item.py +274 -274
  35. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/voltage_level_graphic_item.py +216 -216
  36. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/blue_marble.py +69 -69
  37. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/cartodb.py +74 -74
  38. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/gmt_local.py +131 -131
  39. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapbox.py +67 -67
  40. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapquest.py +70 -70
  41. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/open_street_map.py +73 -73
  42. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_toner.py +68 -68
  43. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_transport.py +71 -71
  44. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_watercolor.py +69 -69
  45. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +191 -191
  46. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +439 -439
  47. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +115 -115
  48. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +91 -91
  49. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +365 -365
  50. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +86 -86
  51. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +933 -874
  52. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/logger.py +4 -4
  53. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/map_events.py +106 -106
  54. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +4106 -4106
  55. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/node_widget.py +161 -161
  56. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +358 -358
  57. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +129 -129
  58. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py +277 -277
  59. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +367 -367
  60. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +1157 -1157
  61. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +109 -109
  62. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +112 -112
  63. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +249 -249
  64. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +415 -415
  65. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_editor.py +309 -309
  66. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +114 -114
  67. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +127 -127
  68. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +131 -131
  69. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +495 -495
  70. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +174 -174
  71. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +173 -173
  72. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +175 -175
  73. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +181 -181
  74. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +162 -162
  75. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +173 -173
  76. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +173 -173
  77. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +174 -174
  78. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +599 -599
  79. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +169 -169
  80. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +153 -153
  81. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +174 -174
  82. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +172 -172
  83. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +944 -944
  84. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +819 -819
  85. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +598 -598
  86. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +16 -16
  87. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/generic_graphics.py +258 -258
  88. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +252 -252
  89. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +4899 -4826
  90. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +417 -417
  91. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/diagrams_model.py +99 -99
  92. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/graphics_manager.py +200 -200
  93. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/video.py +16 -16
  94. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GeneralDialogues.py +857 -857
  95. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +177 -177
  96. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GridGenerator/gui.py +337 -337
  97. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GridGenerator/icons_rc.py +406 -406
  98. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GridGenerator/update_gui_file.py +8 -8
  99. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GuiFunctions.py +2853 -2853
  100. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/LoadDesigner/icons_rc.py +1488 -1488
  101. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/LoadDesigner/load_designer.py +158 -158
  102. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/LoadDesigner/load_designer_ui.py +289 -289
  103. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/LoadDesigner/update_gui_file.py +9 -9
  104. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/ConsoleLog.py +113 -113
  105. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/ConsoleLogController.py +46 -46
  106. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/GridCalMain.py +161 -161
  107. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/MainWindow.py +5373 -5340
  108. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +159 -159
  109. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +1699 -1635
  110. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Model/objects.py +1115 -1115
  111. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Model/time_events.py +523 -523
  112. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/README.txt +18 -18
  113. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Results/results.py +335 -335
  114. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py +92 -92
  115. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +145 -145
  116. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Server/server.py +144 -144
  117. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +432 -432
  118. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/base_gui.py +795 -795
  119. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/io.py +865 -865
  120. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/simulations.py +2655 -2655
  121. GridCal-5.1.11/GridCal/Gui/Main/icons_rc.py +30337 -0
  122. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/object_select_window.py +68 -68
  123. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/update_gui_file.py +20 -20
  124. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/excel_dialog.py +40 -40
  125. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +55 -55
  126. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/icons_rc.py +1857 -1857
  127. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/models_dialogue.py +363 -363
  128. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/profile_dialogue.py +694 -694
  129. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/profiles_from_data.py +10 -10
  130. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +354 -354
  131. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +126 -126
  132. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/update_gui_file.py +9 -9
  133. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/ConsoleWidget.py +69 -69
  134. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/MainWindow.py +507 -507
  135. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +551 -551
  136. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/icons_rc.py +9652 -9652
  137. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/update_gui_file.py +20 -20
  138. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SigmaAnalysis/gui.py +106 -106
  139. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SigmaAnalysis/icons_rc.py +1677 -1677
  140. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +115 -115
  141. {GridCal-5.1.10/GridCal/Gui/ContingencyPlanner → GridCal-5.1.11/GridCal/Gui/SigmaAnalysis}/update_gui_file.py +8 -8
  142. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SolarPowerWizard/gui.py +181 -181
  143. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SolarPowerWizard/icons_rc.py +950 -950
  144. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +185 -185
  145. GridCal-5.1.11/GridCal/Gui/SolarPowerWizard/update_gui_file.py +9 -0
  146. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SyncDialogue/gui.py +108 -108
  147. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SyncDialogue/icons_rc.py +690 -690
  148. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SyncDialogue/sync_dialogue.py +109 -109
  149. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SyncDialogue/update_gui_file.py +9 -9
  150. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SystemScaler/icons_rc.py +1488 -1488
  151. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SystemScaler/system_scaler.py +286 -286
  152. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SystemScaler/system_scaler_ui.py +106 -106
  153. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SystemScaler/update_gui_file.py +9 -9
  154. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +290 -290
  155. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/gui.py +369 -369
  156. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/icons_rc.py +904 -904
  157. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/table_models.py +396 -396
  158. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/test_.py +164 -164
  159. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/update_gui_file.py +9 -9
  160. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TreeModelViewer/MainWindow.py +106 -106
  161. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +265 -265
  162. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TreeModelViewer/icons_rc.py +9596 -9596
  163. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TreeModelViewer/update_gui_file.py +20 -20
  164. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Visualization/palettes.py +464 -464
  165. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Visualization/visualization.py +95 -95
  166. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Widgets/custom_qrangeslider.py +1322 -1322
  167. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Widgets/matplotlibwidget.py +244 -244
  168. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/WindPowerWizard/gui.py +179 -179
  169. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/WindPowerWizard/icons_rc.py +493 -493
  170. GridCal-5.1.11/GridCal/Gui/WindPowerWizard/update_gui_file.py +9 -0
  171. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +106 -106
  172. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/messages.py +75 -75
  173. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/plot_config.py +45 -45
  174. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/themes.py +69 -69
  175. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/update_gui_all.py +45 -45
  176. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/update_gui_common.py +120 -120
  177. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/LICENSE.txt +228 -228
  178. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/export_results_driver.py +116 -116
  179. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/file_handler.py +234 -234
  180. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/results_model.py +317 -317
  181. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/server_driver.py +457 -457
  182. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/session.py +696 -696
  183. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/synchronization_driver.py +424 -424
  184. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/__init__.py +46 -46
  185. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_color.py +231 -231
  186. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +56 -56
  187. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +75 -75
  188. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_main.py +178 -178
  189. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +1 -1
  190. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +29 -29
  191. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +61 -61
  192. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +59 -59
  193. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +34 -34
  194. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +12 -12
  195. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +28 -28
  196. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +114 -114
  197. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +81 -81
  198. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +4 -4
  199. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +5 -5
  200. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_style_loader.py +302 -302
  201. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_template/engine.py +84 -84
  202. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_template/filter.py +94 -94
  203. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_util.py +82 -82
  204. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +19 -19
  205. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +20 -20
  206. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +13 -13
  207. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +36 -36
  208. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +11 -11
  209. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +80 -80
  210. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +22 -22
  211. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +8 -8
  212. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +14 -14
  213. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +1 -1
  214. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +42 -42
  215. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +79 -79
  216. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +42 -42
  217. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +76 -76
  218. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +329 -329
  219. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +223 -223
  220. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/__init__.py +14 -14
  221. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/__version__.py +64 -64
  222. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/data/cables.csv +462 -462
  223. GridCal-5.1.11/GridCal/data/sequence_lines.csv +17 -0
  224. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/data/transformers.csv +788 -788
  225. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/data/wires.csv +100 -100
  226. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/templates.py +156 -156
  227. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/update.py +96 -96
  228. {GridCal-5.1.10 → GridCal-5.1.11}/PKG-INFO +29 -29
  229. {GridCal-5.1.10 → GridCal-5.1.11}/setup.cfg +3 -3
  230. {GridCal-5.1.10 → GridCal-5.1.11}/setup.py +147 -147
  231. GridCal-5.1.10/GridCal/Gui/Main/icons_rc.py +0 -30318
  232. GridCal-5.1.10/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -9
  233. GridCal-5.1.10/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -9
  234. GridCal-5.1.10/GridCal/data/sequence_lines.csv +0 -4
  235. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
  236. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Analysis/__init__.py +0 -0
  237. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
  238. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
  239. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
  240. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Layers/__init__.py +0 -0
  241. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Schema/__init__.py +0 -0
  242. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/TileProviders/__init__.py +0 -0
  243. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
  244. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
  245. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
  246. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
  247. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
  248. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
  249. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Diagrams/__init__.py +0 -0
  250. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/GridGenerator/__init__.py +0 -0
  251. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
  252. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
  253. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
  254. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
  255. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
  256. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
  257. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
  258. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Main/__init__.py +0 -0
  259. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
  260. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
  261. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
  262. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
  263. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
  264. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/SystemScaler/__init__.py +0 -0
  265. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
  266. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
  267. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Visualization/__init__.py +0 -0
  268. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/Widgets/__init__.py +0 -0
  269. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
  270. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Gui/__init__.py +0 -0
  271. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/Session/__init__.py +0 -0
  272. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/__init__.py +0 -0
  273. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
  274. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
  275. {GridCal-5.1.10 → GridCal-5.1.11}/GridCal/data/__init__.py +0 -0
@@ -1,40 +1,40 @@
1
- # This file is part of GridCal.
2
- #
3
- # GridCal is free software: you can redistribute it and/or modify
4
- # it under the terms of the GNU General Public License as published by
5
- # the Free Software Foundation, either version 3 of the License, or
6
- # (at your option) any later version.
7
- #
8
- # GridCal is distributed in the hope that it will be useful,
9
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
- # GNU General Public License for more details.
12
- #
13
- # You should have received a copy of the GNU General Public License
14
- # along with GridCal. If not, see <http://www.gnu.org/licenses/>.
15
- import os
16
- import sys
17
- import ctypes
18
-
19
- PACKAGE_PARENT = '..'
20
- SCRIPT_DIR = os.path.dirname(os.path.realpath(os.path.join(os.getcwd(), os.path.expanduser(__file__))))
21
- sys.path.append(os.path.normpath(os.path.join(SCRIPT_DIR, PACKAGE_PARENT)))
22
- from GridCal.__version__ import about_msg
23
- from GridCal.Gui.Main.GridCalMain import runGridCal
24
- import platform
25
-
26
- if platform.system() == 'Windows':
27
- # this makes the icon display properly under windows
28
- myappid = 'mycompany.myproduct.subproduct.version' # arbitrary string
29
- ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(myappid)
30
-
31
- if __name__ == "__main__":
32
- print('Loading GridCal...')
33
- print(about_msg)
34
-
35
- # Set the application style to the clear theme
36
- os.environ["QT_QUICK_CONTROLS_STYLE"] = "Basic"
37
- # os.environ["QT_QPA_PLATFORMTHEME"] = "qt5ct" # this forces QT-only menus and look and feel
38
-
39
- runGridCal()
40
-
1
+ # This file is part of GridCal.
2
+ #
3
+ # GridCal is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # GridCal is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with GridCal. If not, see <http://www.gnu.org/licenses/>.
15
+ import os
16
+ import sys
17
+ import ctypes
18
+
19
+ PACKAGE_PARENT = '..'
20
+ SCRIPT_DIR = os.path.dirname(os.path.realpath(os.path.join(os.getcwd(), os.path.expanduser(__file__))))
21
+ sys.path.append(os.path.normpath(os.path.join(SCRIPT_DIR, PACKAGE_PARENT)))
22
+ from GridCal.__version__ import about_msg
23
+ from GridCal.Gui.Main.GridCalMain import runGridCal
24
+ import platform
25
+
26
+ if platform.system() == 'Windows':
27
+ # this makes the icon display properly under windows
28
+ myappid = 'mycompany.myproduct.subproduct.version' # arbitrary string
29
+ ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(myappid)
30
+
31
+ if __name__ == "__main__":
32
+ print('Loading GridCal...')
33
+ print(about_msg)
34
+
35
+ # Set the application style to the clear theme
36
+ os.environ["QT_QUICK_CONTROLS_STYLE"] = "Basic"
37
+ # os.environ["QT_QPA_PLATFORMTHEME"] = "qt5ct" # this forces QT-only menus and look and feel
38
+
39
+ runGridCal()
40
+
@@ -1,158 +1,158 @@
1
- import os
2
- import sys
3
- import chardet
4
- import subprocess
5
- from PySide6 import QtWidgets
6
- from typing import List
7
- from GridCal.Gui.AboutDialogue.gui import Ui_AboutDialog
8
- from GridCal.__version__ import __GridCal_VERSION__, contributors_msg, copyright_msg
9
- from GridCal.update import check_version, get_upgrade_command
10
- from GridCalEngine.__version__ import __GridCalEngine_VERSION__
11
- from GridCalEngine.Compilers.circuit_to_newton_pa import (NEWTON_PA_AVAILABLE,
12
- NEWTON_PA_RECOMMENDED_VERSION,
13
- NEWTON_PA_VERSION)
14
- from GridCalEngine.Compilers.circuit_to_bentayga import (BENTAYGA_AVAILABLE,
15
- BENTAYGA_RECOMMENDED_VERSION,
16
- BENTAYGA_VERSION)
17
- from GridCalEngine.Compilers.circuit_to_pgm import (PGM_AVAILABLE,
18
- PGM_RECOMMENDED_VERSION,
19
- PGM_VERSION)
20
-
21
-
22
- class AboutDialogueGuiGUI(QtWidgets.QDialog):
23
-
24
- def __init__(self, parent=None):
25
- """
26
-
27
- :param parent:
28
- """
29
- QtWidgets.QDialog.__init__(self, parent)
30
- self.ui = Ui_AboutDialog()
31
- self.ui.setupUi(self)
32
- self.setWindowTitle('About GridCal')
33
- self.setAcceptDrops(True)
34
-
35
- self.ui.librariesTableWidget.setColumnCount(4)
36
- self.ui.librariesTableWidget.setRowCount(4)
37
- self.ui.librariesTableWidget.setHorizontalHeaderLabels(["Name", "version", "supported version", "licensed"])
38
-
39
- self.ui.librariesTableWidget.setItem(0, 0, QtWidgets.QTableWidgetItem("GridCal"))
40
- self.ui.librariesTableWidget.setItem(0, 1, QtWidgets.QTableWidgetItem(__GridCal_VERSION__))
41
- self.ui.librariesTableWidget.setItem(0, 2, QtWidgets.QTableWidgetItem(__GridCalEngine_VERSION__))
42
- self.ui.librariesTableWidget.setItem(0, 3, QtWidgets.QTableWidgetItem("True"))
43
-
44
- self.ui.librariesTableWidget.setItem(1, 0, QtWidgets.QTableWidgetItem("NewtonPa"))
45
- self.ui.librariesTableWidget.setItem(1, 1, QtWidgets.QTableWidgetItem(NEWTON_PA_VERSION
46
- if NEWTON_PA_AVAILABLE else
47
- "Not installed"))
48
- self.ui.librariesTableWidget.setItem(1, 2, QtWidgets.QTableWidgetItem(NEWTON_PA_RECOMMENDED_VERSION))
49
- self.ui.librariesTableWidget.setItem(1, 3, QtWidgets.QTableWidgetItem(str(NEWTON_PA_AVAILABLE)))
50
-
51
- self.ui.librariesTableWidget.setItem(2, 0, QtWidgets.QTableWidgetItem("Bentayga"))
52
- self.ui.librariesTableWidget.setItem(2, 1, QtWidgets.QTableWidgetItem(BENTAYGA_VERSION
53
- if BENTAYGA_AVAILABLE else
54
- "Not installed"))
55
- self.ui.librariesTableWidget.setItem(2, 2, QtWidgets.QTableWidgetItem(BENTAYGA_RECOMMENDED_VERSION))
56
- self.ui.librariesTableWidget.setItem(2, 3, QtWidgets.QTableWidgetItem(str(BENTAYGA_AVAILABLE)))
57
-
58
- self.ui.librariesTableWidget.setItem(3, 0, QtWidgets.QTableWidgetItem("power-grid-model"))
59
- self.ui.librariesTableWidget.setItem(3, 1, QtWidgets.QTableWidgetItem(PGM_VERSION
60
- if PGM_AVAILABLE else
61
- "Not installed"))
62
- self.ui.librariesTableWidget.setItem(3, 2, QtWidgets.QTableWidgetItem(PGM_RECOMMENDED_VERSION))
63
- self.ui.librariesTableWidget.setItem(3, 3, QtWidgets.QTableWidgetItem(str(PGM_AVAILABLE)))
64
-
65
- # check the version in pypi
66
- version_code, latest_version = check_version()
67
-
68
- self.upgrade_cmd: List[str] = ['']
69
-
70
- if version_code == 1:
71
- addendum = '\nThere is a newer version: ' + latest_version
72
-
73
- self.upgrade_cmd = get_upgrade_command(latest_version)
74
- command = ' '.join(self.upgrade_cmd)
75
- self.ui.updateLabel.setText('\n\nTerminal command to update:\n\n' + command)
76
- self.ui.updateButton.setVisible(True)
77
-
78
- elif version_code == -1:
79
- addendum = '\nThis version is newer than the version available in the repositories (' + latest_version + ')'
80
- self.ui.updateLabel.setText(addendum)
81
- self.ui.updateButton.setVisible(False)
82
-
83
- elif version_code == 0:
84
- addendum = '\nGridCal is up to date.'
85
- self.ui.updateLabel.setText(addendum)
86
- self.ui.updateButton.setVisible(False)
87
-
88
- elif version_code == -2:
89
- addendum = '\nIt was impossible to check for a newer version'
90
- self.ui.updateLabel.setText(addendum)
91
- self.ui.updateButton.setVisible(False)
92
-
93
- else:
94
- addendum = ''
95
- self.ui.updateLabel.setText(addendum)
96
- self.ui.updateButton.setVisible(False)
97
-
98
- # self.ui.mainLabel.setText(about_msg)
99
- self.ui.versionLabel.setText('GridCal version: ' + __GridCal_VERSION__ + ', ' + addendum)
100
- self.ui.copyrightLabel.setText(copyright_msg)
101
- self.ui.contributorsLabel.setText(contributors_msg)
102
-
103
- # click
104
- self.ui.updateButton.clicked.connect(self.update)
105
-
106
- self.show_license()
107
-
108
- def msg(self, text, title="Warning"):
109
- """
110
- Message box
111
- :param text: Text to display
112
- :param title: Name of the window
113
- """
114
- msg = QtWidgets.QMessageBox()
115
- msg.setIcon(QtWidgets.QMessageBox.Icon.Information)
116
- msg.setText(text)
117
- # msg.setInformativeText("This is additional information")
118
- msg.setWindowTitle(title)
119
- # msg.setDetailedText("The details are as follows:")
120
- msg.setStandardButtons(QtWidgets.QMessageBox.StandardButton.Ok)
121
- retval = msg.exec_()
122
-
123
- def update(self):
124
- """
125
- Upgrade GridCal
126
- :return:
127
- """
128
- list_files = subprocess.run(self.upgrade_cmd,
129
- stdout=subprocess.PIPE,
130
- text=True,
131
- input="Hello from the other side") # upgrade_cmd is a list already
132
- if list_files.returncode != 0:
133
- self.msg("The exit code was: %d" % list_files.returncode)
134
- else:
135
- self.msg('GridCal updated successfully')
136
-
137
- def show_license(self):
138
- """
139
- Show the license
140
- """
141
- here = os.path.abspath(os.path.dirname(__file__))
142
- license_file = os.path.join(here, '..', '..', 'LICENSE.txt')
143
-
144
- # make a guess of the file encoding
145
- detection = chardet.detect(open(license_file, "rb").read())
146
-
147
- with open(license_file, 'r', encoding=detection['encoding']) as file:
148
- license_txt = file.read()
149
-
150
- self.ui.licenseTextEdit.setPlainText(license_txt)
151
-
152
-
153
- if __name__ == "__main__":
154
- app = QtWidgets.QApplication(sys.argv)
155
- window = AboutDialogueGuiGUI()
156
- # window.resize(1.61 * 700.0, 600.0) # golden ratio
157
- window.show()
158
- sys.exit(app.exec_())
1
+ import os
2
+ import sys
3
+ import chardet
4
+ import subprocess
5
+ from PySide6 import QtWidgets
6
+ from typing import List
7
+ from GridCal.Gui.AboutDialogue.gui import Ui_AboutDialog
8
+ from GridCal.__version__ import __GridCal_VERSION__, contributors_msg, copyright_msg
9
+ from GridCal.update import check_version, get_upgrade_command
10
+ from GridCalEngine.__version__ import __GridCalEngine_VERSION__
11
+ from GridCalEngine.Compilers.circuit_to_newton_pa import (NEWTON_PA_AVAILABLE,
12
+ NEWTON_PA_RECOMMENDED_VERSION,
13
+ NEWTON_PA_VERSION)
14
+ from GridCalEngine.Compilers.circuit_to_bentayga import (BENTAYGA_AVAILABLE,
15
+ BENTAYGA_RECOMMENDED_VERSION,
16
+ BENTAYGA_VERSION)
17
+ from GridCalEngine.Compilers.circuit_to_pgm import (PGM_AVAILABLE,
18
+ PGM_RECOMMENDED_VERSION,
19
+ PGM_VERSION)
20
+
21
+
22
+ class AboutDialogueGuiGUI(QtWidgets.QDialog):
23
+
24
+ def __init__(self, parent=None):
25
+ """
26
+
27
+ :param parent:
28
+ """
29
+ QtWidgets.QDialog.__init__(self, parent)
30
+ self.ui = Ui_AboutDialog()
31
+ self.ui.setupUi(self)
32
+ self.setWindowTitle('About GridCal')
33
+ self.setAcceptDrops(True)
34
+
35
+ self.ui.librariesTableWidget.setColumnCount(4)
36
+ self.ui.librariesTableWidget.setRowCount(4)
37
+ self.ui.librariesTableWidget.setHorizontalHeaderLabels(["Name", "version", "supported version", "licensed"])
38
+
39
+ self.ui.librariesTableWidget.setItem(0, 0, QtWidgets.QTableWidgetItem("GridCal"))
40
+ self.ui.librariesTableWidget.setItem(0, 1, QtWidgets.QTableWidgetItem(__GridCal_VERSION__))
41
+ self.ui.librariesTableWidget.setItem(0, 2, QtWidgets.QTableWidgetItem(__GridCalEngine_VERSION__))
42
+ self.ui.librariesTableWidget.setItem(0, 3, QtWidgets.QTableWidgetItem("True"))
43
+
44
+ self.ui.librariesTableWidget.setItem(1, 0, QtWidgets.QTableWidgetItem("NewtonPa"))
45
+ self.ui.librariesTableWidget.setItem(1, 1, QtWidgets.QTableWidgetItem(NEWTON_PA_VERSION
46
+ if NEWTON_PA_AVAILABLE else
47
+ "Not installed"))
48
+ self.ui.librariesTableWidget.setItem(1, 2, QtWidgets.QTableWidgetItem(NEWTON_PA_RECOMMENDED_VERSION))
49
+ self.ui.librariesTableWidget.setItem(1, 3, QtWidgets.QTableWidgetItem(str(NEWTON_PA_AVAILABLE)))
50
+
51
+ self.ui.librariesTableWidget.setItem(2, 0, QtWidgets.QTableWidgetItem("Bentayga"))
52
+ self.ui.librariesTableWidget.setItem(2, 1, QtWidgets.QTableWidgetItem(BENTAYGA_VERSION
53
+ if BENTAYGA_AVAILABLE else
54
+ "Not installed"))
55
+ self.ui.librariesTableWidget.setItem(2, 2, QtWidgets.QTableWidgetItem(BENTAYGA_RECOMMENDED_VERSION))
56
+ self.ui.librariesTableWidget.setItem(2, 3, QtWidgets.QTableWidgetItem(str(BENTAYGA_AVAILABLE)))
57
+
58
+ self.ui.librariesTableWidget.setItem(3, 0, QtWidgets.QTableWidgetItem("power-grid-model"))
59
+ self.ui.librariesTableWidget.setItem(3, 1, QtWidgets.QTableWidgetItem(PGM_VERSION
60
+ if PGM_AVAILABLE else
61
+ "Not installed"))
62
+ self.ui.librariesTableWidget.setItem(3, 2, QtWidgets.QTableWidgetItem(PGM_RECOMMENDED_VERSION))
63
+ self.ui.librariesTableWidget.setItem(3, 3, QtWidgets.QTableWidgetItem(str(PGM_AVAILABLE)))
64
+
65
+ # check the version in pypi
66
+ version_code, latest_version = check_version()
67
+
68
+ self.upgrade_cmd: List[str] = ['']
69
+
70
+ if version_code == 1:
71
+ addendum = '\nThere is a newer version: ' + latest_version
72
+
73
+ self.upgrade_cmd = get_upgrade_command(latest_version)
74
+ command = ' '.join(self.upgrade_cmd)
75
+ self.ui.updateLabel.setText('\n\nTerminal command to update:\n\n' + command)
76
+ self.ui.updateButton.setVisible(True)
77
+
78
+ elif version_code == -1:
79
+ addendum = '\nThis version is newer than the version available in the repositories (' + latest_version + ')'
80
+ self.ui.updateLabel.setText(addendum)
81
+ self.ui.updateButton.setVisible(False)
82
+
83
+ elif version_code == 0:
84
+ addendum = '\nGridCal is up to date.'
85
+ self.ui.updateLabel.setText(addendum)
86
+ self.ui.updateButton.setVisible(False)
87
+
88
+ elif version_code == -2:
89
+ addendum = '\nIt was impossible to check for a newer version'
90
+ self.ui.updateLabel.setText(addendum)
91
+ self.ui.updateButton.setVisible(False)
92
+
93
+ else:
94
+ addendum = ''
95
+ self.ui.updateLabel.setText(addendum)
96
+ self.ui.updateButton.setVisible(False)
97
+
98
+ # self.ui.mainLabel.setText(about_msg)
99
+ self.ui.versionLabel.setText('GridCal version: ' + __GridCal_VERSION__ + ', ' + addendum)
100
+ self.ui.copyrightLabel.setText(copyright_msg)
101
+ self.ui.contributorsLabel.setText(contributors_msg)
102
+
103
+ # click
104
+ self.ui.updateButton.clicked.connect(self.update)
105
+
106
+ self.show_license()
107
+
108
+ def msg(self, text, title="Warning"):
109
+ """
110
+ Message box
111
+ :param text: Text to display
112
+ :param title: Name of the window
113
+ """
114
+ msg = QtWidgets.QMessageBox()
115
+ msg.setIcon(QtWidgets.QMessageBox.Icon.Information)
116
+ msg.setText(text)
117
+ # msg.setInformativeText("This is additional information")
118
+ msg.setWindowTitle(title)
119
+ # msg.setDetailedText("The details are as follows:")
120
+ msg.setStandardButtons(QtWidgets.QMessageBox.StandardButton.Ok)
121
+ retval = msg.exec_()
122
+
123
+ def update(self):
124
+ """
125
+ Upgrade GridCal
126
+ :return:
127
+ """
128
+ list_files = subprocess.run(self.upgrade_cmd,
129
+ stdout=subprocess.PIPE,
130
+ text=True,
131
+ input="Hello from the other side") # upgrade_cmd is a list already
132
+ if list_files.returncode != 0:
133
+ self.msg("The exit code was: %d" % list_files.returncode)
134
+ else:
135
+ self.msg('GridCal updated successfully')
136
+
137
+ def show_license(self):
138
+ """
139
+ Show the license
140
+ """
141
+ here = os.path.abspath(os.path.dirname(__file__))
142
+ license_file = os.path.join(here, '..', '..', 'LICENSE.txt')
143
+
144
+ # make a guess of the file encoding
145
+ detection = chardet.detect(open(license_file, "rb").read())
146
+
147
+ with open(license_file, 'r', encoding=detection['encoding']) as file:
148
+ license_txt = file.read()
149
+
150
+ self.ui.licenseTextEdit.setPlainText(license_txt)
151
+
152
+
153
+ if __name__ == "__main__":
154
+ app = QtWidgets.QApplication(sys.argv)
155
+ window = AboutDialogueGuiGUI()
156
+ # window.resize(1.61 * 700.0, 600.0) # golden ratio
157
+ window.show()
158
+ sys.exit(app.exec_())