GridCal 5.1.35__tar.gz → 5.1.36__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.
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/open_street_map.py +10 -3
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +13 -8
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +4 -4
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +3 -3
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +11 -21
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/base_diagram_widget.py +1 -1
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/MainWindow.py +226 -230
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +50 -29
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/simulations.py +8 -5
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/icons_rc.py +2 -2
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/__version__.py +1 -1
- {GridCal-5.1.35 → GridCal-5.1.36}/PKG-INFO +1 -1
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ExecuteGridCal.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/AboutDialogue/about_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/AboutDialogue/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/AboutDialogue/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/AboutDialogue/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/AnalysisDialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/object_plot_analysis.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Analysis/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CascadingSteps/cascading_steps.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CascadingSteps/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CascadingSteps/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ContingencyPlanner/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ContingencyPlanner/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CoordinatesInput/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CoordinatesInput/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Branches/new_line_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Substation/node_graphic_item.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/gmt_local.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/mapbox.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/mapquest.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_toner.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_transport.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_watercolor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_editor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_taps_editor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_editor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_editor.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/diagrams_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/generic_graphics.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Diagrams/graphics_manager.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/GridGenerator/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/GridGenerator/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/GridGenerator/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/GridGenerator/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadCatalogue/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadCatalogue/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadDesigner/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadDesigner/load_designer.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/LoadDesigner/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/ConsoleLog.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/ConsoleLogController.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/GridCalMain.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Model/objects.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/README.txt +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Results/results.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Server/server.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/base_gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/SubClasses/io.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/object_select_window.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Main/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/excel_dialog.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/models_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/profiles_from_data.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/ProfilesInput/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/ConsoleWidget.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/MainWindow.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SigmaAnalysis/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SigmaAnalysis/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SolarPowerWizard/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SolarPowerWizard/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SyncDialogue/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SyncDialogue/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SyncDialogue/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SystemScaler/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SystemScaler/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SystemScaler/system_scaler.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/SystemScaler/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/table_models.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/test_.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TowerBuilder/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TreeModelViewer/MainWindow.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TreeModelViewer/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Visualization/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Visualization/visualization.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Widgets/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Widgets/custom_qrangeslider.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/Widgets/matplotlibwidget.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/WindPowerWizard/gui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/WindPowerWizard/icons_rc.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/associations_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/console_widget.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/general_dialogues.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/gui_functions.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/messages.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/object_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/pandas_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/plot_config.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/profiles_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/table_view_header_wrap.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/themes.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/update_gui_all.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/update_gui_common.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Gui/wrappable_table_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/LICENSE.txt +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/export_results_driver.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/file_handler.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/results_model.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/server_driver.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/session.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/Session/synchronization_driver.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_color.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_main.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/_util.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/data/__init__.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/data/cables.csv +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/data/sequence_lines.csv +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/data/transformers.csv +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/data/wires.csv +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/plugins.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/templates.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/GridCal/update.py +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/setup.cfg +0 -0
- {GridCal-5.1.35 → GridCal-5.1.36}/setup.py +0 -0
@@ -10,14 +10,21 @@ from GridCal.Gui.Diagrams.MapWidget.Tiles.tiles import Tiles
|
|
10
10
|
class OsmTiles(Tiles):
|
11
11
|
"""An object to source server tiles for pySlipQt."""
|
12
12
|
|
13
|
-
def __init__(self, tiles_dir='open_street_map_tiles', http_proxy=None):
|
13
|
+
def __init__(self, name: str = 'OpenStreetMap Tiles', tiles_dir='open_street_map_tiles', http_proxy=None, tile_servers=None):
|
14
|
+
"""
|
15
|
+
|
16
|
+
:param name:
|
17
|
+
:param tiles_dir:
|
18
|
+
:param http_proxy:
|
19
|
+
:param tile_servers:
|
20
|
+
"""
|
14
21
|
"""Override the base class for these tiles.
|
15
22
|
|
16
23
|
Basically, just fill in the BaseTiles class with values from above
|
17
24
|
and provide the Geo2Tile() and Tile2Geo() methods.
|
18
25
|
"""
|
19
26
|
|
20
|
-
super().__init__(TilesetName=
|
27
|
+
super().__init__(TilesetName=name,
|
21
28
|
TilesetShortName='OSM Tiles',
|
22
29
|
TilesetVersion='1.0',
|
23
30
|
levels=list(range(17)),
|
@@ -30,7 +37,7 @@ class OsmTiles(Tiles):
|
|
30
37
|
# 'https://a.tile.openstreetmap.org',
|
31
38
|
# 'https://b.tile.openstreetmap.org',
|
32
39
|
# 'https://c.tile.openstreetmap.org',
|
33
|
-
],
|
40
|
+
] if tile_servers is None else tile_servers,
|
34
41
|
url_path='/{Z}/{X}/{Y}.png',
|
35
42
|
max_server_requests=2,
|
36
43
|
max_lru=10000,
|
@@ -6,7 +6,8 @@ For example, see osm_tiles.py.
|
|
6
6
|
"""
|
7
7
|
import queue
|
8
8
|
import ssl
|
9
|
-
from urllib import request
|
9
|
+
# from urllib import request
|
10
|
+
from urllib.request import Request, urlopen
|
10
11
|
from collections.abc import Callable
|
11
12
|
from PySide6.QtGui import QPixmap
|
12
13
|
from PySide6.QtCore import QThread
|
@@ -27,7 +28,7 @@ class TileWorker(QThread):
|
|
27
28
|
id_num: int,
|
28
29
|
server: str,
|
29
30
|
tilepath: str,
|
30
|
-
|
31
|
+
requests_cue: queue.Queue,
|
31
32
|
callback: Callable[[int, float, float, QPixmap, bool], None], # level, x, y, pixmap, error
|
32
33
|
error_tile: QPixmap,
|
33
34
|
content_type: str,
|
@@ -40,7 +41,7 @@ class TileWorker(QThread):
|
|
40
41
|
:param id_num: a unique numer identifying the worker instance
|
41
42
|
:param server: server URL
|
42
43
|
:param tilepath: path to tile on server
|
43
|
-
:param
|
44
|
+
:param requests_cue: the request queue
|
44
45
|
:param callback: function to call after tile available
|
45
46
|
:param error_tile: image of error tile
|
46
47
|
:param content_type: expected Content-Type string
|
@@ -54,7 +55,7 @@ class TileWorker(QThread):
|
|
54
55
|
self.id_num = id_num
|
55
56
|
self.server = server
|
56
57
|
self.tilepath = tilepath
|
57
|
-
self.
|
58
|
+
self.requests_cue = requests_cue
|
58
59
|
self.callback: Callable[[int, float, float, QPixmap, bool], None] = callback
|
59
60
|
self.error_tile_image = error_tile
|
60
61
|
self.content_type = content_type
|
@@ -70,15 +71,19 @@ class TileWorker(QThread):
|
|
70
71
|
"""
|
71
72
|
while True:
|
72
73
|
# get zoom level and tile coordinates to retrieve
|
73
|
-
(level, x, y) = self.
|
74
|
+
(level, x, y) = self.requests_cue.get()
|
74
75
|
|
75
76
|
# try to retrieve the image
|
76
77
|
error = False
|
77
78
|
pixmap = self.error_image
|
78
79
|
try:
|
79
80
|
tile_url = self.server + self.tilepath.format(Z=level, X=x, Y=y)
|
80
|
-
|
81
|
+
|
82
|
+
# Create a Request object with the desired headers
|
83
|
+
response = urlopen(Request(tile_url, headers={'User-Agent': 'GridCal 5'}))
|
84
|
+
|
81
85
|
content_type = response.info().get_content_type()
|
86
|
+
|
82
87
|
if content_type == self.content_type:
|
83
88
|
data = response.read()
|
84
89
|
pixmap = QPixmap()
|
@@ -88,11 +93,11 @@ class TileWorker(QThread):
|
|
88
93
|
error = True
|
89
94
|
except Exception as e:
|
90
95
|
error = True
|
91
|
-
log(
|
96
|
+
log(f"{e} exception getting tile ({level},{x},{y}) with {tile_url}")
|
92
97
|
|
93
98
|
# call the callback function passing level, x, y and pixmap data
|
94
99
|
# error is False if we want to cache this tile on-disk
|
95
100
|
self.callback(level, x, y, pixmap, error)
|
96
101
|
|
97
102
|
# finally, removes request from queue
|
98
|
-
self.
|
103
|
+
self.requests_cue.task_done()
|
@@ -147,9 +147,9 @@ class Tiles(BaseTiles):
|
|
147
147
|
# test for firewall - use proxy (if supplied)
|
148
148
|
test_url = self.servers[0] + self.url_path.format(Z=0, X=0, Y=0)
|
149
149
|
try:
|
150
|
-
|
151
|
-
|
152
|
-
request.urlopen(test_url)
|
150
|
+
r = request.Request(test_url, headers={'User-Agent': 'GridCal 5'})
|
151
|
+
response = request.urlopen(r).read()
|
152
|
+
# request.urlopen(test_url)
|
153
153
|
except HTTPError as e:
|
154
154
|
# if it's fatal, log it and die, otherwise try a proxy
|
155
155
|
status_code = e.code
|
@@ -188,7 +188,7 @@ class Tiles(BaseTiles):
|
|
188
188
|
worker = TileWorker(id_num=num_thread,
|
189
189
|
server=server,
|
190
190
|
tilepath=self.url_path,
|
191
|
-
|
191
|
+
requests_cue=self.request_queue,
|
192
192
|
callback=self.tile_is_available,
|
193
193
|
error_tile=self.error_tile,
|
194
194
|
content_type=self.content_type,
|
@@ -1126,10 +1126,10 @@ class GridMapWidget(BaseDiagramWidget):
|
|
1126
1126
|
#
|
1127
1127
|
# painter = QPainter(image)
|
1128
1128
|
# painter.setRenderHint(QPainter.Antialiasing)
|
1129
|
-
#
|
1130
|
-
# self.render(painter)
|
1129
|
+
# self.map.view.render(painter) # self.view stores the grid widgets
|
1130
|
+
# # self.render(painter)
|
1131
1131
|
# painter.end()
|
1132
|
-
image = self.grab().toImage()
|
1132
|
+
image = self.map.grab().toImage()
|
1133
1133
|
|
1134
1134
|
return image, w, h
|
1135
1135
|
|
@@ -34,7 +34,7 @@ from PySide6.QtCore import Qt, QTimer, QEvent, QPointF
|
|
34
34
|
from PySide6.QtGui import (QPainter, QColor, QPixmap, QCursor,
|
35
35
|
QMouseEvent, QKeyEvent, QWheelEvent,
|
36
36
|
QResizeEvent, QEnterEvent, QPaintEvent, QDragEnterEvent, QDragMoveEvent, QDropEvent)
|
37
|
-
from PySide6.QtWidgets import (QSizePolicy, QWidget, QGraphicsScene, QGraphicsView, QStackedLayout,
|
37
|
+
from PySide6.QtWidgets import (QSizePolicy, QWidget, QGraphicsScene, QGraphicsView, QStackedLayout,
|
38
38
|
QGraphicsSceneMouseEvent, QGraphicsItem, QLabel, QGraphicsProxyWidget)
|
39
39
|
|
40
40
|
from GridCal.Gui.Diagrams.MapWidget.Tiles.tiles import Tiles
|
@@ -77,7 +77,7 @@ class MapScene(QGraphicsScene):
|
|
77
77
|
# print(f"Scene pressed at {event.scenePos()}")
|
78
78
|
super().mousePressEvent(event)
|
79
79
|
|
80
|
-
def mouseReleaseEvent(self, event):
|
80
|
+
def mouseReleaseEvent(self, event: QGraphicsSceneMouseEvent) -> None:
|
81
81
|
"""
|
82
82
|
|
83
83
|
:param event:
|
@@ -113,20 +113,19 @@ class MapView(QGraphicsView):
|
|
113
113
|
self._scene = scene
|
114
114
|
|
115
115
|
self.map_widget = map_widget
|
116
|
+
self.setStyleSheet("QGraphicsView { border: none; }")
|
116
117
|
|
117
118
|
# Create a QLabel
|
118
|
-
self.
|
119
|
-
self.
|
120
|
-
|
121
|
-
|
119
|
+
self.attribution_label = QLabel("Bottom Left Label")
|
120
|
+
self.attribution_label.setStyleSheet("background-color: rgba(0, 0, 0, 0);"
|
121
|
+
"color: rgba(150, 150, 150, 180);"
|
122
|
+
"font-size:9pt") # Semi-transparent yellow
|
122
123
|
|
123
124
|
# Create a QGraphicsProxyWidget for the QLabel
|
124
125
|
self.label_proxy_widget = QGraphicsProxyWidget()
|
125
|
-
self.label_proxy_widget.setWidget(self.
|
126
|
-
|
127
|
-
# Position the QLabel within the scene
|
128
|
-
self.label_proxy_widget.setPos(0, scene.sceneRect().height() - self.label.height()) # Bottom-left position
|
126
|
+
self.label_proxy_widget.setWidget(self.attribution_label)
|
129
127
|
self.label_proxy_widget.setFlag(QGraphicsItem.ItemIgnoresTransformations)
|
128
|
+
self.update_label_position()
|
130
129
|
|
131
130
|
# Add the proxy widget to the scene
|
132
131
|
self._scene.addItem(self.label_proxy_widget)
|
@@ -157,7 +156,7 @@ class MapView(QGraphicsView):
|
|
157
156
|
:param val:
|
158
157
|
:return:
|
159
158
|
"""
|
160
|
-
self.
|
159
|
+
self.attribution_label.setText(val)
|
161
160
|
|
162
161
|
def selected_items(self) -> List[QGraphicsItem]:
|
163
162
|
"""
|
@@ -305,7 +304,7 @@ class MapView(QGraphicsView):
|
|
305
304
|
view_height = self.viewport().height()
|
306
305
|
|
307
306
|
# Set position relative to the bottom-left corner of the viewport
|
308
|
-
self.label_proxy_widget.setPos(self.mapToScene(0, view_height - self.
|
307
|
+
self.label_proxy_widget.setPos(self.mapToScene(0, view_height - self.attribution_label.height()))
|
309
308
|
|
310
309
|
def set_size_diagram(self) -> None:
|
311
310
|
"""
|
@@ -1879,15 +1878,6 @@ class MapWidget(QWidget):
|
|
1879
1878
|
# self.tile_size_y = tile_src.tile_size_y
|
1880
1879
|
self.level = level
|
1881
1880
|
|
1882
|
-
result = self.tile_src.GetInfo(level)
|
1883
|
-
(num_tiles_x, num_tiles_y, ppd_x, ppd_y) = result
|
1884
|
-
# self.map_width = self.tile_size_x * num_tiles_x
|
1885
|
-
# self.map_height = self.tile_size_y * num_tiles_y
|
1886
|
-
|
1887
|
-
# set tile levels stuff - allowed levels, etc
|
1888
|
-
# self.tiles_max_level = max(tile_src.levels)
|
1889
|
-
# self.tiles_min_level = min(tile_src.levels)
|
1890
|
-
|
1891
1881
|
# set callback from Tile source object when tile(s) available
|
1892
1882
|
self.tile_src.setCallback(self.on_tile_available)
|
1893
1883
|
|
@@ -40,7 +40,7 @@ from GridCalEngine.Devices.Diagrams.schematic_diagram import SchematicDiagram
|
|
40
40
|
from GridCalEngine.Devices.Diagrams.map_diagram import MapDiagram
|
41
41
|
from GridCalEngine.Simulations.types import DRIVER_OBJECTS
|
42
42
|
from GridCalEngine.basic_structures import Logger
|
43
|
-
from GridCalEngine.enumerations import
|
43
|
+
from GridCalEngine.enumerations import SimulationTypes
|
44
44
|
|
45
45
|
from GridCal.Gui.Diagrams.graphics_manager import GraphicsManager
|
46
46
|
import GridCalEngine.Devices.Diagrams.palettes as palettes
|