VeraGrid 5.6.11__tar.gz → 5.6.13__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.
- {veragrid-5.6.11 → veragrid-5.6.13}/PKG-INFO +1 -1
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/grid_map_widget.py +3 -155
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/map_widget.py +5 -3
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +1 -22
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +1 -24
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +12 -1
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +2 -2
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/schematic_widget.py +147 -20
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/terminal_item.py +4 -2
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/base_diagram_widget.py +4 -4
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Icons/icons_rc.py +416 -273
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/MainWindow.py +802 -1117
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/data_base.py +100 -17
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/diagrams.py +69 -29
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Scripting/scripting.py +28 -79
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/base_gui.py +15 -4
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/io.py +10 -8
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/simulations.py +3 -4
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/VeraGridMain.py +1 -1
- veragrid-5.6.13/VeraGrid/Gui/SubstationDesigner/voltage_level_conversion.py +589 -0
- veragrid-5.6.13/VeraGrid/Gui/font_config.py +9 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/gui_functions.py +3 -2
- veragrid-5.6.13/VeraGrid/Gui/python_console.py +585 -0
- veragrid-5.6.13/VeraGrid/Gui/python_highlighter.py +166 -0
- veragrid-5.6.13/VeraGrid/Gui/python_script_editor.py +223 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/__version__.py +1 -1
- veragrid-5.6.11/VeraGrid/Gui/SubstationDesigner/voltage_level_conversion.py +0 -280
- veragrid-5.6.11/VeraGrid/Gui/python_console.py +0 -199
- veragrid-5.6.11/VeraGrid/Gui/python_highlighter.py +0 -80
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ExecuteVeraGrid.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/AboutDialogue/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/AboutDialogue/about_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/AboutDialogue/about_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/AboutDialogue/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Analysis/AnalysisDialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Analysis/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Analysis/analysis_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Analysis/object_plot_analysis.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Analysis/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ContingencyPlanner/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ContingencyPlanner/contingency_planner_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/CoordinatesInput/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/CoordinatesInput/coordinates_input_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/controllable_shunt_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/generator_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/line_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/new_line_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/transformer3w_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/transformer_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/Editors/transformer_taps_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/line_location_graphic_item.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_battery_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_external_grid_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_generator_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_injections_template_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_load_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_static_generator_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics_3term.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/diagram_bus_selection_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/diagrams_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/generic_graphics.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/graphics_manager.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridGenerator/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridGenerator/grid_generator_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridGenerator/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/build_diff_tree.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/grid_diff.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/grid_diff_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/grid_merge.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/grid_merge_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridMerge/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridReduce/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridReduce/grid_reduce.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridReduce/grid_reduce_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/GridReduce/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Icons/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Icons/update_icons_rc.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadCatalogue/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadDesigner/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadDesigner/load_designer.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/LoadDesigner/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/compiled_arrays_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/README.txt +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Results/results.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Server/server.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/Settings/configuration.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/SubClasses/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/object_select_window.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Main/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/excel_dialog.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/models_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/ProfilesInput/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RmsModelEditor/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RmsModelEditor/block_data_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RmsModelEditor/rms_model_editor.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RmsModelEditor/rms_model_editor_engine.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RmsModelEditor/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RosetaExplorer/MainWindow.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RosetaExplorer/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SigmaAnalysis/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SigmaAnalysis/sigma_analysis_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SolarPowerWizard/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SolarPowerWizard/solar_power_wizard_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SubstationDesigner/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SubstationDesigner/substation_designer.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SubstationDesigner/substation_designer_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SubstationDesigner/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SyncDialogue/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SyncDialogue/sync_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SyncDialogue/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SystemScaler/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SystemScaler/system_scaler.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/SystemScaler/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TowerBuilder/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TowerBuilder/table_models.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TowerBuilder/tower_builder.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TowerBuilder/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TreeModelViewer/MainWindow.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TreeModelViewer/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Visualization/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Visualization/visualization.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Widgets/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Widgets/custom_qrangeslider.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Widgets/matplotlibwidget.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/WindPowerWizard/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/WindPowerWizard/wind_power_wizard_gui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/associations_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/correct_icons.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/general_dialogues.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/messages.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/object_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/object_proxy_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/pandas_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/plot_config.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/profiles_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/results_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/rms_events_editor_dialog.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/rms_plot_variables_dialog.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/table_view_header_wrap.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/themes.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/toast_widget.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/update_gui_all.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/update_gui_common.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/wrappable_table_model.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/LICENSE.txt +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/export_results_driver.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/file_handler.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/server_driver.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/session.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Session/synchronization_driver.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/darkdetect/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/darkdetect/_dummy.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/darkdetect/_linux_detect.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/darkdetect/_mac_detect.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/darkdetect/_windows_detect.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_color.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_main.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/_util.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/VeraGrid.ico +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/VeraGrid.svg +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/__init__.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/cables.csv +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/sequence_lines.csv +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/transformers.csv +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/data/wires.csv +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/plugins.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/templates.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/update.py +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/setup.cfg +0 -0
- {veragrid-5.6.11 → veragrid-5.6.13}/setup.py +0 -0
|
@@ -6,7 +6,7 @@ from __future__ import annotations
|
|
|
6
6
|
|
|
7
7
|
import ast
|
|
8
8
|
import os
|
|
9
|
-
from typing import Union, List,
|
|
9
|
+
from typing import Union, List, Tuple, Dict, TYPE_CHECKING
|
|
10
10
|
import json
|
|
11
11
|
import numpy as np
|
|
12
12
|
import math
|
|
@@ -19,7 +19,6 @@ from PySide6.QtCore import (Qt, QMimeData, QIODevice, QByteArray, QDataStream, Q
|
|
|
19
19
|
from PySide6.QtGui import (QIcon, QPixmap, QImage, QStandardItemModel, QStandardItem, QColor, QDropEvent)
|
|
20
20
|
|
|
21
21
|
from VeraGrid.Gui.Diagrams.MapWidget.Branches.map_line_container import MapLineContainer
|
|
22
|
-
from VeraGrid.Gui.Diagrams.SchematicWidget.Injections.generator_graphics import GeneratorGraphicItem
|
|
23
22
|
from VeraGrid.Gui.Diagrams.SchematicWidget.Substation.bus_graphics import BusGraphicItem
|
|
24
23
|
from VeraGrid.Gui.Diagrams.generic_graphics import GenericDiagramWidget
|
|
25
24
|
from VeraGrid.Gui.SubstationDesigner.substation_designer import SubstationDesigner
|
|
@@ -136,7 +135,7 @@ class MapLibraryModel(QStandardItemModel):
|
|
|
136
135
|
:return: QByteArray
|
|
137
136
|
"""
|
|
138
137
|
data = QByteArray()
|
|
139
|
-
stream = QDataStream(data, QIODevice.WriteOnly)
|
|
138
|
+
stream = QDataStream(data, QIODevice.OpenModeFlag.WriteOnly)
|
|
140
139
|
stream.writeQString(val)
|
|
141
140
|
return data
|
|
142
141
|
|
|
@@ -166,7 +165,7 @@ class MapLibraryModel(QStandardItemModel):
|
|
|
166
165
|
txt = self.data(idx, Qt.ItemDataRole.DisplayRole)
|
|
167
166
|
|
|
168
167
|
data = QByteArray()
|
|
169
|
-
stream = QDataStream(data, QIODevice.WriteOnly)
|
|
168
|
+
stream = QDataStream(data, QIODevice.OpenModeFlag.WriteOnly)
|
|
170
169
|
stream.writeQString(txt)
|
|
171
170
|
|
|
172
171
|
mime_data.setData('component/name', data)
|
|
@@ -3129,154 +3128,3 @@ def generate_map_diagram(
|
|
|
3129
3128
|
|
|
3130
3129
|
return diagram
|
|
3131
3130
|
|
|
3132
|
-
|
|
3133
|
-
def get_devices_to_expand(circuit: MultiCircuit, substations: List[Substation], max_level: int = 1,
|
|
3134
|
-
expand_outside: bool = True) -> Tuple[
|
|
3135
|
-
List[Substation],
|
|
3136
|
-
List[VoltageLevel],
|
|
3137
|
-
List[Line],
|
|
3138
|
-
List[DcLine],
|
|
3139
|
-
List[HvdcLine]]:
|
|
3140
|
-
"""
|
|
3141
|
-
get lists of devices to expand given a root bus
|
|
3142
|
-
:param circuit: MultiCircuit
|
|
3143
|
-
:param substations: List of Bus
|
|
3144
|
-
:param max_level: max expansion level
|
|
3145
|
-
:param expand_outside: whether to expand outside of the given references using the branches
|
|
3146
|
-
:return:
|
|
3147
|
-
"""
|
|
3148
|
-
|
|
3149
|
-
# get all Branches
|
|
3150
|
-
all_branches = circuit.lines + circuit.dc_lines + circuit.hvdc_lines
|
|
3151
|
-
|
|
3152
|
-
# create a pool of buses that belong to the substations
|
|
3153
|
-
# store the bus objects and their level from the root
|
|
3154
|
-
bus_pool = [(b, 0) for b in circuit.buses if b.substation in substations]
|
|
3155
|
-
|
|
3156
|
-
voltage_levels = set()
|
|
3157
|
-
substations_extended = set()
|
|
3158
|
-
selected_branches = set()
|
|
3159
|
-
|
|
3160
|
-
while len(bus_pool) > 0:
|
|
3161
|
-
|
|
3162
|
-
# search the next bus
|
|
3163
|
-
bus, level = bus_pool.pop()
|
|
3164
|
-
|
|
3165
|
-
if bus.voltage_level is not None:
|
|
3166
|
-
voltage_levels.add(bus.voltage_level)
|
|
3167
|
-
if bus.substation not in substations_extended:
|
|
3168
|
-
substations_extended.add(bus.substation)
|
|
3169
|
-
|
|
3170
|
-
if level < max_level:
|
|
3171
|
-
|
|
3172
|
-
for i, br in enumerate(all_branches):
|
|
3173
|
-
|
|
3174
|
-
if br.bus_from == bus:
|
|
3175
|
-
if expand_outside:
|
|
3176
|
-
bus_pool.append((br.bus_to, level + 1))
|
|
3177
|
-
selected_branches.add(br)
|
|
3178
|
-
|
|
3179
|
-
elif br.bus_to == bus:
|
|
3180
|
-
if expand_outside:
|
|
3181
|
-
bus_pool.append((br.bus_from, level + 1))
|
|
3182
|
-
selected_branches.add(br)
|
|
3183
|
-
|
|
3184
|
-
else:
|
|
3185
|
-
pass
|
|
3186
|
-
|
|
3187
|
-
# sort Branches
|
|
3188
|
-
lines: List[Line] = list()
|
|
3189
|
-
dc_lines: List[DcLine] = list()
|
|
3190
|
-
hvdc_lines: List[HvdcLine] = list()
|
|
3191
|
-
|
|
3192
|
-
for obj in selected_branches:
|
|
3193
|
-
|
|
3194
|
-
if obj.device_type == DeviceType.LineDevice:
|
|
3195
|
-
lines.append(obj)
|
|
3196
|
-
|
|
3197
|
-
elif obj.device_type == DeviceType.DCLineDevice:
|
|
3198
|
-
dc_lines.append(obj)
|
|
3199
|
-
|
|
3200
|
-
|
|
3201
|
-
elif obj.device_type == DeviceType.HVDCLineDevice:
|
|
3202
|
-
hvdc_lines.append(obj)
|
|
3203
|
-
|
|
3204
|
-
else:
|
|
3205
|
-
raise Exception(f'Unrecognized branch type {obj.device_type.value}')
|
|
3206
|
-
|
|
3207
|
-
list_substations_extended = list(substations_extended)
|
|
3208
|
-
|
|
3209
|
-
for substation in substations:
|
|
3210
|
-
if substation not in list_substations_extended:
|
|
3211
|
-
list_substations_extended.append(substation)
|
|
3212
|
-
|
|
3213
|
-
return list_substations_extended, list(voltage_levels), lines, dc_lines, hvdc_lines
|
|
3214
|
-
|
|
3215
|
-
|
|
3216
|
-
def make_diagram_from_substations(circuit: MultiCircuit,
|
|
3217
|
-
substations: List[Substation] | Set[Substation],
|
|
3218
|
-
prog_func: Union[Callable, None] = None,
|
|
3219
|
-
text_func: Union[Callable, None] = None,
|
|
3220
|
-
use_flow_based_width: bool = False,
|
|
3221
|
-
min_branch_width: int = 1.0,
|
|
3222
|
-
max_branch_width=5,
|
|
3223
|
-
min_bus_width=1.0,
|
|
3224
|
-
max_bus_width=20,
|
|
3225
|
-
arrow_size=20,
|
|
3226
|
-
palette: Colormaps = Colormaps.VeraGrid,
|
|
3227
|
-
default_bus_voltage: float = 10,
|
|
3228
|
-
expand_outside: bool = True,
|
|
3229
|
-
name="Map diagram"):
|
|
3230
|
-
"""
|
|
3231
|
-
Create a vicinity diagram
|
|
3232
|
-
:param circuit: MultiCircuit
|
|
3233
|
-
:param substations: List of Bus
|
|
3234
|
-
:param prog_func:
|
|
3235
|
-
:param text_func:
|
|
3236
|
-
:param use_flow_based_width: use flow based width
|
|
3237
|
-
:param min_branch_width: minimum branch width
|
|
3238
|
-
:param max_branch_width: maximum branch width
|
|
3239
|
-
:param min_bus_width:
|
|
3240
|
-
:param max_bus_width: maximum bus width
|
|
3241
|
-
:param arrow_size: arrow size
|
|
3242
|
-
:param palette: Colormaps
|
|
3243
|
-
:param default_bus_voltage: default bus voltage
|
|
3244
|
-
:param expand_outside: whether to expand outside the given references using the branches
|
|
3245
|
-
:param name: Name of the diagram
|
|
3246
|
-
:return:
|
|
3247
|
-
"""
|
|
3248
|
-
|
|
3249
|
-
(substations_extended, voltage_levels,
|
|
3250
|
-
lines, dc_lines, hvdc_lines) = get_devices_to_expand(circuit=circuit,
|
|
3251
|
-
substations=substations,
|
|
3252
|
-
max_level=1,
|
|
3253
|
-
expand_outside=expand_outside)
|
|
3254
|
-
|
|
3255
|
-
# Draw schematic subset
|
|
3256
|
-
diagram = generate_map_diagram(
|
|
3257
|
-
substations=substations_extended,
|
|
3258
|
-
voltage_levels=voltage_levels,
|
|
3259
|
-
lines=lines,
|
|
3260
|
-
dc_lines=dc_lines,
|
|
3261
|
-
hvdc_lines=hvdc_lines,
|
|
3262
|
-
fluid_nodes=list(),
|
|
3263
|
-
fluid_paths=list(),
|
|
3264
|
-
external_grids=list(),
|
|
3265
|
-
static_generators=list(),
|
|
3266
|
-
loads=list(),
|
|
3267
|
-
batteries=list(),
|
|
3268
|
-
generators=list(),
|
|
3269
|
-
prog_func=prog_func,
|
|
3270
|
-
text_func=text_func,
|
|
3271
|
-
name=name,
|
|
3272
|
-
use_flow_based_width=use_flow_based_width,
|
|
3273
|
-
min_branch_width=min_branch_width,
|
|
3274
|
-
max_branch_width=max_branch_width,
|
|
3275
|
-
min_bus_width=min_bus_width,
|
|
3276
|
-
max_bus_width=max_bus_width,
|
|
3277
|
-
arrow_size=arrow_size,
|
|
3278
|
-
palette=palette,
|
|
3279
|
-
default_bus_voltage=default_bus_voltage
|
|
3280
|
-
)
|
|
3281
|
-
|
|
3282
|
-
return diagram
|
|
@@ -137,9 +137,11 @@ class MapView(QGraphicsView):
|
|
|
137
137
|
|
|
138
138
|
# Create a QLabel
|
|
139
139
|
self.attribution_label = QLabel("Bottom Left Label")
|
|
140
|
-
self.attribution_label.setStyleSheet(
|
|
141
|
-
|
|
142
|
-
|
|
140
|
+
self.attribution_label.setStyleSheet(
|
|
141
|
+
"background-color: rgba(0, 0, 0, 0);"
|
|
142
|
+
"color: rgba(150, 150, 150, 180);"
|
|
143
|
+
"font-size:9pt"
|
|
144
|
+
) # Semi-transparent yellow
|
|
143
145
|
|
|
144
146
|
# Create a QGraphicsProxyWidget for the QLabel
|
|
145
147
|
self.label_proxy_widget = QGraphicsProxyWidget()
|
|
@@ -47,35 +47,14 @@ class ControllableShuntGraphicItem(InjectionTemplateGraphicItem):
|
|
|
47
47
|
@param event:
|
|
48
48
|
@return:
|
|
49
49
|
"""
|
|
50
|
-
menu =
|
|
50
|
+
menu = self.get_base_context_menu()
|
|
51
51
|
menu.addSection("Controllable shunt")
|
|
52
52
|
|
|
53
|
-
add_menu_entry(menu=menu,
|
|
54
|
-
text="Active",
|
|
55
|
-
checkeable=True,
|
|
56
|
-
checked_value=self.api_object.active,
|
|
57
|
-
function_ptr=self.enable_disable_toggle)
|
|
58
|
-
|
|
59
53
|
add_menu_entry(menu=menu,
|
|
60
54
|
text="Editor",
|
|
61
55
|
function_ptr=self.edit,
|
|
62
56
|
icon_path=":/Icons/icons/edit.png")
|
|
63
57
|
|
|
64
|
-
add_menu_entry(menu=menu,
|
|
65
|
-
text="Plot profiles",
|
|
66
|
-
function_ptr=self.plot,
|
|
67
|
-
icon_path=":/Icons/icons/plot.png")
|
|
68
|
-
|
|
69
|
-
add_menu_entry(menu=menu,
|
|
70
|
-
text="Delete",
|
|
71
|
-
function_ptr=self.delete,
|
|
72
|
-
icon_path=":/Icons/icons/delete3.png")
|
|
73
|
-
|
|
74
|
-
add_menu_entry(menu=menu,
|
|
75
|
-
text="Change bus",
|
|
76
|
-
function_ptr=self.change_bus,
|
|
77
|
-
icon_path=":/Icons/icons/move_bus.png")
|
|
78
|
-
|
|
79
58
|
menu.exec_(event.screenPos())
|
|
80
59
|
|
|
81
60
|
def edit(self):
|
|
@@ -55,16 +55,9 @@ class GeneratorGraphicItem(InjectionTemplateGraphicItem):
|
|
|
55
55
|
@param event:
|
|
56
56
|
@return:
|
|
57
57
|
"""
|
|
58
|
-
menu =
|
|
58
|
+
menu = self.get_base_context_menu()
|
|
59
59
|
menu.addSection("Generator")
|
|
60
60
|
|
|
61
|
-
add_menu_entry(menu=menu,
|
|
62
|
-
text="Active",
|
|
63
|
-
icon_path="",
|
|
64
|
-
function_ptr=self.enable_disable_toggle,
|
|
65
|
-
checkeable=True,
|
|
66
|
-
checked_value=self.api_object.active)
|
|
67
|
-
|
|
68
61
|
add_menu_entry(menu=menu,
|
|
69
62
|
text="Voltage control",
|
|
70
63
|
icon_path="",
|
|
@@ -89,13 +82,6 @@ class GeneratorGraphicItem(InjectionTemplateGraphicItem):
|
|
|
89
82
|
|
|
90
83
|
menu.addSeparator()
|
|
91
84
|
|
|
92
|
-
add_menu_entry(menu=menu,
|
|
93
|
-
text="Plot profiles",
|
|
94
|
-
icon_path=":/Icons/icons/plot.png",
|
|
95
|
-
function_ptr=self.plot)
|
|
96
|
-
|
|
97
|
-
menu.addSeparator()
|
|
98
|
-
|
|
99
85
|
add_menu_entry(menu=menu,
|
|
100
86
|
text="Solar photovoltaic wizard",
|
|
101
87
|
icon_path=":/Icons/icons/solar_power.png",
|
|
@@ -108,20 +94,11 @@ class GeneratorGraphicItem(InjectionTemplateGraphicItem):
|
|
|
108
94
|
|
|
109
95
|
menu.addSeparator()
|
|
110
96
|
|
|
111
|
-
add_menu_entry(menu, text='Remove',
|
|
112
|
-
icon_path=":/Icons/icons/delete_schematic.png",
|
|
113
|
-
function_ptr=self.delete)
|
|
114
|
-
|
|
115
97
|
add_menu_entry(menu=menu,
|
|
116
98
|
text="Convert to battery",
|
|
117
99
|
icon_path=":/Icons/icons/add_batt.png",
|
|
118
100
|
function_ptr=self.to_battery)
|
|
119
101
|
|
|
120
|
-
add_menu_entry(menu=menu,
|
|
121
|
-
text="Change bus",
|
|
122
|
-
icon_path=":/Icons/icons/move_bus.png",
|
|
123
|
-
function_ptr=self.change_bus)
|
|
124
|
-
|
|
125
102
|
menu.exec_(event.screenPos())
|
|
126
103
|
|
|
127
104
|
def edit_rms(self):
|
|
@@ -189,7 +189,6 @@ class InjectionTemplateGraphicItem(GenericDiagramWidget, QGraphicsItemGroup):
|
|
|
189
189
|
|
|
190
190
|
deleted, delete_from_db_final = self.editor.delete_with_dialogue(selected=[self], delete_from_db=False)
|
|
191
191
|
|
|
192
|
-
|
|
193
192
|
def plot(self):
|
|
194
193
|
"""
|
|
195
194
|
Plot API objects profiles
|
|
@@ -214,6 +213,13 @@ class InjectionTemplateGraphicItem(GenericDiagramWidget, QGraphicsItemGroup):
|
|
|
214
213
|
"""
|
|
215
214
|
self._editor.change_injection_bus(injection_graphics=self)
|
|
216
215
|
|
|
216
|
+
def move_behind_converter(self):
|
|
217
|
+
"""
|
|
218
|
+
Create a DC bus and a converter and move the injection there
|
|
219
|
+
:return:
|
|
220
|
+
"""
|
|
221
|
+
self._editor.move_behind_converter(injection_graphics=self)
|
|
222
|
+
|
|
217
223
|
def rescale(self, scale: float = 1.0):
|
|
218
224
|
"""
|
|
219
225
|
|
|
@@ -240,6 +246,11 @@ class InjectionTemplateGraphicItem(GenericDiagramWidget, QGraphicsItemGroup):
|
|
|
240
246
|
function_ptr=self.change_bus,
|
|
241
247
|
icon_path=":/Icons/icons/move_bus.png")
|
|
242
248
|
|
|
249
|
+
add_menu_entry(menu=menu,
|
|
250
|
+
text="Move behind converter",
|
|
251
|
+
function_ptr=self.move_behind_converter,
|
|
252
|
+
icon_path=":/Icons/icons/to_vsc.png")
|
|
253
|
+
|
|
243
254
|
add_menu_entry(menu=menu,
|
|
244
255
|
text="Plot profiles",
|
|
245
256
|
function_ptr=self.plot,
|
{veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py
RENAMED
|
@@ -32,7 +32,7 @@ from VeraGrid.Gui.Diagrams.SchematicWidget.Injections.current_injection_graphics
|
|
|
32
32
|
from VeraGrid.Gui.Diagrams.SchematicWidget.Injections.controllable_shunt_graphics import (
|
|
33
33
|
ControllableShuntGraphicItem,
|
|
34
34
|
ControllableShunt)
|
|
35
|
-
from VeraGridEngine.enumerations import DeviceType,
|
|
35
|
+
from VeraGridEngine.enumerations import DeviceType, BusGraphicType
|
|
36
36
|
from VeraGridEngine.Devices.types import INJECTION_DEVICE_TYPES
|
|
37
37
|
from VeraGridEngine.Devices.Substation import Bus
|
|
38
38
|
from VeraGridEngine.Devices.Aggregation.short_cirtcuit_event import ShortCircuitEvent
|
|
@@ -640,7 +640,7 @@ class BusGraphicItem(GenericDiagramWidget, QtWidgets.QGraphicsRectItem):
|
|
|
640
640
|
def convert_to_connectivity_grid(self) -> None:
|
|
641
641
|
"""
|
|
642
642
|
Transform this bus into a grid of buses to be able to compute the bus currents
|
|
643
|
-
and delete this bus
|
|
643
|
+
and delete this bus afterward
|
|
644
644
|
"""
|
|
645
645
|
self.editor.transform_busbar_to_connectivity_grid(bus_graphics=self)
|
|
646
646
|
|
{veragrid-5.6.11 → veragrid-5.6.13}/VeraGrid/Gui/Diagrams/SchematicWidget/schematic_widget.py
RENAMED
|
@@ -1757,8 +1757,8 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
1757
1757
|
bus: Bus,
|
|
1758
1758
|
injections_by_tpe: Dict[DeviceType, List[ALL_DEV_TYPES]],
|
|
1759
1759
|
explode_factor: float = 1.0,
|
|
1760
|
-
x0: Union[
|
|
1761
|
-
y0: Union[
|
|
1760
|
+
x0: Union[float, None] = None,
|
|
1761
|
+
y0: Union[float, None] = None) -> BusGraphicItem:
|
|
1762
1762
|
"""
|
|
1763
1763
|
Add API bus to the diagram
|
|
1764
1764
|
:param bus: Bus instance
|
|
@@ -1996,8 +1996,8 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
1996
1996
|
|
|
1997
1997
|
def add_api_vsc(self,
|
|
1998
1998
|
elm: VSC,
|
|
1999
|
-
x: float,
|
|
2000
|
-
y: float,
|
|
1999
|
+
x: float | None = None,
|
|
2000
|
+
y: float | None = None,
|
|
2001
2001
|
r: float = 0.0,
|
|
2002
2002
|
logger: Logger = Logger()) -> Union[VscGraphicItem, None]:
|
|
2003
2003
|
"""
|
|
@@ -4601,6 +4601,38 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
4601
4601
|
|
|
4602
4602
|
self.draw_additional_diagram(diagram=diagram)
|
|
4603
4603
|
|
|
4604
|
+
def add_buses_deep(self, buses: List[Bus] | Set[Bus]):
|
|
4605
|
+
"""
|
|
4606
|
+
Draw all elements associated to a group of buses with deeper expansion.
|
|
4607
|
+
Used for voltage level conversions where internal buses and switches
|
|
4608
|
+
may be multiple hops away.
|
|
4609
|
+
:param buses: List or Set of Buses
|
|
4610
|
+
"""
|
|
4611
|
+
|
|
4612
|
+
(buses,
|
|
4613
|
+
lines, dc_lines, transformers2w,
|
|
4614
|
+
transformers3w, windings, hvdc_lines,
|
|
4615
|
+
vsc_converters, upfc_devices,
|
|
4616
|
+
series_reactances, switches,
|
|
4617
|
+
fluid_nodes, fluid_paths) = get_devices_to_expand(circuit=self.circuit, buses=buses, max_level=5)
|
|
4618
|
+
|
|
4619
|
+
# Draw schematic subset
|
|
4620
|
+
diagram = generate_schematic_diagram(buses=list(buses),
|
|
4621
|
+
lines=lines,
|
|
4622
|
+
dc_lines=dc_lines,
|
|
4623
|
+
transformers2w=transformers2w,
|
|
4624
|
+
transformers3w=transformers3w,
|
|
4625
|
+
windings=windings,
|
|
4626
|
+
hvdc_lines=hvdc_lines,
|
|
4627
|
+
vsc_devices=vsc_converters,
|
|
4628
|
+
upfc_devices=upfc_devices,
|
|
4629
|
+
series_reactances=series_reactances,
|
|
4630
|
+
switches=switches,
|
|
4631
|
+
fluid_nodes=list(fluid_nodes),
|
|
4632
|
+
fluid_paths=fluid_paths)
|
|
4633
|
+
|
|
4634
|
+
self.draw_additional_diagram(diagram=diagram)
|
|
4635
|
+
|
|
4604
4636
|
def change_injection_bus(self, injection_graphics: INJECTION_GRAPHICS):
|
|
4605
4637
|
"""
|
|
4606
4638
|
|
|
@@ -4672,6 +4704,55 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
4672
4704
|
|
|
4673
4705
|
new_bus_graphic.get_terminal().update()
|
|
4674
4706
|
|
|
4707
|
+
def move_behind_converter(self, injection_graphics: INJECTION_GRAPHICS):
|
|
4708
|
+
"""
|
|
4709
|
+
This function moved an injection device from an AC bus to another
|
|
4710
|
+
newly created DC bus that is connected to a new converter
|
|
4711
|
+
:param injection_graphics:
|
|
4712
|
+
:return:
|
|
4713
|
+
"""
|
|
4714
|
+
|
|
4715
|
+
ok = yes_no_question(
|
|
4716
|
+
text=f"Are you sure that you want to relocate {injection_graphics.api_object.name} "
|
|
4717
|
+
f"behind a converter?",
|
|
4718
|
+
title='Move behind converter'
|
|
4719
|
+
)
|
|
4720
|
+
|
|
4721
|
+
if ok:
|
|
4722
|
+
old_bus_graphic: BusGraphicItem = self.graphics_manager.query(injection_graphics.api_object.bus)
|
|
4723
|
+
|
|
4724
|
+
new_bus, converter = self.circuit.move_behind_converter(api_object=injection_graphics.api_object)
|
|
4725
|
+
|
|
4726
|
+
if old_bus_graphic is None:
|
|
4727
|
+
x0 = injection_graphics.api_object.bus.x
|
|
4728
|
+
y0 = injection_graphics.api_object.bus.y + 180
|
|
4729
|
+
else:
|
|
4730
|
+
x0 = old_bus_graphic.x()
|
|
4731
|
+
y0 = old_bus_graphic.y() + 180
|
|
4732
|
+
|
|
4733
|
+
new_bus_graphic_item = self.add_api_bus(
|
|
4734
|
+
bus=new_bus,
|
|
4735
|
+
injections_by_tpe={
|
|
4736
|
+
injection_graphics.api_object.device_type: [injection_graphics.api_object]
|
|
4737
|
+
},
|
|
4738
|
+
x0=x0,
|
|
4739
|
+
y0=y0
|
|
4740
|
+
)
|
|
4741
|
+
self.add_to_scene(new_bus_graphic_item)
|
|
4742
|
+
|
|
4743
|
+
new_bus_graphic_item.set_position(x=x0, y=y0)
|
|
4744
|
+
|
|
4745
|
+
self.add_api_vsc(elm=converter)
|
|
4746
|
+
|
|
4747
|
+
# add the graphics for the new bus
|
|
4748
|
+
# new_bus_graphic_item.add_object(api_obj=injection_graphics.api_object)
|
|
4749
|
+
|
|
4750
|
+
self._remove_from_scene(injection_graphics.nexus)
|
|
4751
|
+
self._remove_from_scene(injection_graphics)
|
|
4752
|
+
|
|
4753
|
+
new_bus_graphic_item.update()
|
|
4754
|
+
injection_graphics.update_nexus(injection_graphics.pos())
|
|
4755
|
+
|
|
4675
4756
|
def transform_busbar_to_connectivity_grid(self, bus_graphics: BusGraphicItem, x_offset=80):
|
|
4676
4757
|
"""
|
|
4677
4758
|
Transform the bus into a grid of buses to be able to compute the bus currents
|
|
@@ -4721,11 +4802,26 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
4721
4802
|
vl_type=vl_wizard.get_vl_type(),
|
|
4722
4803
|
add_disconnectors=vl_wizard.add_brakers_checkbox.isChecked(),
|
|
4723
4804
|
bar_by_segments=vl_wizard.bar_by_segments_checkbox.isChecked(),
|
|
4724
|
-
skip_injections_reconnection=True
|
|
4805
|
+
skip_injections_reconnection=True,
|
|
4806
|
+
enable_transfer_bus=vl_wizard.enable_transfer_bus_checkbox.isChecked(),
|
|
4807
|
+
reducible_branches=vl_wizard.reducible_branches_checkbox.isChecked(),
|
|
4808
|
+
bay_assignments=vl_wizard.get_bay_assignments(),
|
|
4809
|
+
x0=bus_graphics.x(),
|
|
4810
|
+
y0=bus_graphics.y()
|
|
4725
4811
|
)
|
|
4726
4812
|
|
|
4727
4813
|
# add the newly created buses to the diagram (with all their stuff that's not there already)
|
|
4728
|
-
|
|
4814
|
+
# Use all buses (including internal ones) to ensure all switches are drawn
|
|
4815
|
+
self.add_buses_deep(buses=new_buses)
|
|
4816
|
+
|
|
4817
|
+
# Force redraw of all new bus graphics to ensure connections are visible
|
|
4818
|
+
for new_bus in new_buses:
|
|
4819
|
+
bus_graphic = self.graphics_manager.query(new_bus)
|
|
4820
|
+
if bus_graphic is not None:
|
|
4821
|
+
bus_graphic.update()
|
|
4822
|
+
terminal = bus_graphic.get_terminal()
|
|
4823
|
+
if terminal is not None:
|
|
4824
|
+
terminal.update()
|
|
4729
4825
|
|
|
4730
4826
|
# reconnect graphics
|
|
4731
4827
|
# self.reconnect_bus_graphics(bus_graphics=bus_graphics, new_buses=conn_buses)
|
|
@@ -4736,23 +4832,50 @@ class SchematicWidget(BaseDiagramWidget):
|
|
|
4736
4832
|
new_bus_graphic: BusGraphicItem = self.graphics_manager.query(new_bus)
|
|
4737
4833
|
branch_graphic = self.graphics_manager.query(element)
|
|
4738
4834
|
|
|
4739
|
-
#
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4835
|
+
# Skip if graphics not found
|
|
4836
|
+
if new_bus_graphic is None:
|
|
4837
|
+
print(f"Warning: No graphic found for bus {new_bus.name}")
|
|
4838
|
+
continue
|
|
4839
|
+
if branch_graphic is None:
|
|
4840
|
+
print(f"Warning: No graphic found for element {element.name}")
|
|
4841
|
+
continue
|
|
4842
|
+
|
|
4843
|
+
# At this point the API branch has been reassigned already
|
|
4844
|
+
terminal = new_bus_graphic.get_terminal()
|
|
4845
|
+
if terminal is not None:
|
|
4846
|
+
terminal.reassign_terminal(
|
|
4847
|
+
graphic_obj=branch_graphic,
|
|
4848
|
+
another_terminal=bus_graphics.terminal
|
|
4849
|
+
)
|
|
4745
4850
|
|
|
4746
|
-
branch_graphic.api_object
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4851
|
+
if hasattr(branch_graphic, 'api_object') and branch_graphic.api_object is not None:
|
|
4852
|
+
branch_graphic.api_object.reassign_bus(
|
|
4853
|
+
old_bus=bus_graphics.api_object,
|
|
4854
|
+
new_bus=new_bus_graphic.api_object
|
|
4855
|
+
)
|
|
4750
4856
|
|
|
4751
|
-
|
|
4857
|
+
if terminal is not None:
|
|
4858
|
+
terminal.update()
|
|
4752
4859
|
|
|
4753
4860
|
# Finally delete the old bus
|
|
4754
4861
|
self.delete_element_utility_function(device=bus_graphics.api_object)
|
|
4755
4862
|
|
|
4863
|
+
# Update scene to ensure visual refresh of newly added elements
|
|
4864
|
+
# Invalidate the entire scene to force redraw of all items
|
|
4865
|
+
self.diagram_scene.invalidate()
|
|
4866
|
+
self.diagram_scene.update()
|
|
4867
|
+
self.editor_graphics_view.viewport().update()
|
|
4868
|
+
|
|
4869
|
+
# select the new buses
|
|
4870
|
+
for new_bus in new_buses:
|
|
4871
|
+
new_bus_graphic: BusGraphicItem = self.graphics_manager.query(new_bus)
|
|
4872
|
+
if new_bus_graphic is not None:
|
|
4873
|
+
new_bus_graphic.setSelected(True)
|
|
4874
|
+
|
|
4875
|
+
# Process events to ensure updates are applied immediately
|
|
4876
|
+
from PySide6.QtWidgets import QApplication
|
|
4877
|
+
QApplication.processEvents()
|
|
4878
|
+
|
|
4756
4879
|
else:
|
|
4757
4880
|
self.gui.show_warning_toast("No conversion made...")
|
|
4758
4881
|
|
|
@@ -5021,7 +5144,7 @@ List[FluidPath]]:
|
|
|
5021
5144
|
bus_idx.append(bus_dict[bus])
|
|
5022
5145
|
|
|
5023
5146
|
# add searched bus
|
|
5024
|
-
if bus.graphic_type == BusGraphicType.BusBar or bus.graphic_type.Connectivity:
|
|
5147
|
+
if bus.graphic_type == BusGraphicType.BusBar or bus.graphic_type == BusGraphicType.Connectivity:
|
|
5025
5148
|
buses.add(bus)
|
|
5026
5149
|
|
|
5027
5150
|
if level < (max_level + max_level_offset):
|
|
@@ -5034,15 +5157,19 @@ List[FluidPath]]:
|
|
|
5034
5157
|
max_level_offset = 1
|
|
5035
5158
|
|
|
5036
5159
|
if br.bus_from == bus:
|
|
5160
|
+
# Always add the branch if connected to current bus
|
|
5161
|
+
selected_branches.add(br)
|
|
5162
|
+
# Only add the other bus to pool if not visited
|
|
5037
5163
|
if br.bus_to not in visited:
|
|
5038
5164
|
bus_pool.append((br.bus_to, level + 1))
|
|
5039
|
-
selected_branches.add(br)
|
|
5040
5165
|
visited.add(br.bus_to)
|
|
5041
5166
|
|
|
5042
5167
|
elif br.bus_to == bus:
|
|
5168
|
+
# Always add the branch if connected to current bus
|
|
5169
|
+
selected_branches.add(br)
|
|
5170
|
+
# Only add the other bus to pool if not visited
|
|
5043
5171
|
if br.bus_from not in visited:
|
|
5044
5172
|
bus_pool.append((br.bus_from, level + 1))
|
|
5045
|
-
selected_branches.add(br)
|
|
5046
5173
|
visited.add(br.bus_from)
|
|
5047
5174
|
|
|
5048
5175
|
else:
|
|
@@ -263,7 +263,8 @@ class BarTerminalItem(BaseTerminal, QGraphicsRectItem):
|
|
|
263
263
|
dx = w / (n + 1)
|
|
264
264
|
|
|
265
265
|
for i, (connection, call_back) in enumerate(self._hosting_connections.items()):
|
|
266
|
-
call_back
|
|
266
|
+
if call_back is not None:
|
|
267
|
+
call_back(value + QPointF(float(i + 1) * dx, h2))
|
|
267
268
|
|
|
268
269
|
def itemChange(self, change: QGraphicsItem.GraphicsItemChange, value: Any) -> Any:
|
|
269
270
|
"""
|
|
@@ -393,7 +394,8 @@ class RoundTerminalItem(BaseTerminal, QGraphicsEllipseItem):
|
|
|
393
394
|
"""
|
|
394
395
|
|
|
395
396
|
for i, (connection, call_back) in enumerate(self._hosting_connections.items()):
|
|
396
|
-
call_back
|
|
397
|
+
if call_back is not None:
|
|
398
|
+
call_back(value + self.center)
|
|
397
399
|
|
|
398
400
|
def itemChange(self, change: QGraphicsItem.GraphicsItemChange, value: QPointF) -> QPointF:
|
|
399
401
|
"""
|
|
@@ -165,15 +165,15 @@ class BaseDiagramWidget(QSplitter):
|
|
|
165
165
|
|
|
166
166
|
# Table to display object's properties
|
|
167
167
|
self.object_editor_table = QTableView(self)
|
|
168
|
-
change_font_size(self.object_editor_table, 9)
|
|
169
|
-
change_font_size(self.object_editor_table.verticalHeader(), 9)
|
|
170
|
-
change_font_size(self.object_editor_table.horizontalHeader(), 9)
|
|
168
|
+
# change_font_size(self.object_editor_table, 9)
|
|
169
|
+
# change_font_size(self.object_editor_table.verticalHeader(), 9)
|
|
170
|
+
# change_font_size(self.object_editor_table.horizontalHeader(), 9)
|
|
171
171
|
|
|
172
172
|
# Actual libraryView object
|
|
173
173
|
self.library_view = QListView(self)
|
|
174
174
|
self.library_view.setViewMode(self.library_view.ViewMode.ListMode)
|
|
175
175
|
self.library_view.setDragDropMode(QAbstractItemView.DragDropMode.InternalMove)
|
|
176
|
-
change_font_size(self.library_view, 9)
|
|
176
|
+
# change_font_size(self.library_view, 9)
|
|
177
177
|
|
|
178
178
|
# library model
|
|
179
179
|
self.library_model = library_model
|