pyampp.gxbox.gxampp =================== .. py:module:: pyampp.gxbox.gxampp Attributes ---------- .. autoapisummary:: pyampp.gxbox.gxampp.app pyampp.gxbox.gxampp.base_dir Classes ------- .. autoapisummary:: pyampp.gxbox.gxampp.CustomQLineEdit pyampp.gxbox.gxampp.PyAmppGUI Functions --------- .. autoapisummary:: pyampp.gxbox.gxampp.main Module Contents --------------- .. py:data:: app .. py:data:: base_dir .. py:class:: CustomQLineEdit Bases: :py:obj:`PyQt5.QtWidgets.QLineEdit` .. py:method:: setTextL(text) Sets the text of the QLineEdit and moves the cursor to the beginning. :param text: str The text to set. .. py:class:: PyAmppGUI Bases: :py:obj:`PyQt5.QtWidgets.QMainWindow` Main application GUI for the Solar Data Model. This class creates the main window and sets up the user interface for managing solar data and model configurations. .. attribute:: central_widget The central widget of the main window. :type: QWidget .. attribute:: main_layout The main layout for the central widget. :type: QVBoxLayout .. method:: initUI(): Initializes the user interface. .. method:: add_data_repository_section(): Adds the data repository section to the UI. .. method:: update_sdo_data_dir(): Updates the SDO data directory path. .. method:: update_gxmodel_dir(): Updates the GX model directory path. .. method:: update_external_box_dir(): Updates the external box directory path. .. method:: update_dir(new_path, default_path): Updates the specified directory path. .. method:: open_sdo_file_dialog(): Opens a file dialog for selecting the SDO data directory. .. method:: open_gx_file_dialog(): Opens a file dialog for selecting the GX model directory. .. method:: open_external_file_dialog(): Opens a file dialog for selecting the external box directory. .. method:: add_model_configuration_section(): Adds the model configuration section to the UI. .. method:: add_options_section(): Adds the options section to the UI. .. method:: add_cmd_display(): Adds the command display section to the UI. .. method:: add_cmd_buttons(): Adds command buttons to the UI. .. method:: add_status_log(): Adds the status log section to the UI. .. method:: update_command_display(): Updates the command display with the current command. .. method:: update_hpc_state(checked): Updates the UI when Helioprojective coordinates are selected. .. method:: update_hgc_state(checked): Updates the UI when Heliographic Carrington coordinates are selected. .. method:: get_command(): Constructs the command based on the current UI settings. .. method:: execute_command(): Executes the constructed command. .. method:: save_command(): Saves the current command. .. method:: refresh_command(): Refreshes the current session. .. method:: clear_command(): Clears the status log. .. py:attribute:: info_only_box :value: None .. py:attribute:: model_time_orig :value: None .. py:attribute:: rotate_revert_button :value: None .. py:attribute:: coords_center :value: None .. py:attribute:: coords_center_orig :value: None .. py:method:: initUI() Sets up the initial user interface for the main window. .. py:method:: on_reset_to_test_defaults_clicked() .. py:method:: on_restore_last_saved_clicked() .. py:method:: on_open_fov_selector_clicked() .. py:method:: closeEvent(event) .. py:method:: add_data_repository_section() .. py:method:: update_sdo_data_dir() Updates the SDO data directory path based on the user input. .. py:method:: update_gxmodel_dir() Updates the GX model directory path based on the user input. .. py:method:: update_refmaps_path() .. py:method:: update_jsoc_notify_email() Updates the JSOC notify email via the PYAMPP_JSOC_NOTIFY_EMAIL environment variable. .. py:method:: read_external_box() Reads the external box path based on the user input. .. py:method:: update_external_box_dir() Updates the external box directory path based on the user input. .. py:method:: update_dir(new_path, default_path, target_edit=None) Updates the specified directory path. :param new_path: The new directory path. :type new_path: str :param default_path: The default directory path. :type default_path: str .. py:method:: open_sdo_file_dialog() Opens a file dialog for selecting the SDO data directory. .. py:method:: open_gx_file_dialog() Opens a file dialog for selecting the GX model directory. .. py:method:: open_external_file_dialog() Opens a file dialog for selecting the external box directory. .. py:method:: open_refmaps_path_dialog() .. py:method:: add_model_configuration_section() .. py:method:: add_options_section() Adds the options section to the main layout. .. py:method:: add_cmd_display() Adds the command display section to the main layout. .. py:method:: add_cmd_buttons() Adds the command buttons to the main layout. .. py:method:: add_status_log() Adds the status log section to the main layout. .. py:method:: on_coord_x_input_return_pressed(widget) .. py:method:: on_coord_y_input_return_pressed(widget) .. py:method:: on_grid_x_input_return_pressed(widget) .. py:method:: on_grid_y_input_return_pressed(widget) .. py:method:: on_grid_z_input_return_pressed(widget) .. py:method:: on_res_input_return_pressed(widget) .. py:method:: on_padding_size_input_return_pressed(widget) .. py:method:: on_time_input_changed() .. py:method:: on_rotate_revert_button_clicked() .. py:method:: rotate_revert() .. py:method:: on_rotate_model_to_time() Rotates the model to the specified time. .. py:method:: update_command_display(widget=None) Updates the command display with the current command. .. py:method:: apply_geometry_selection(selection: pyampp.gxbox.selector_api.BoxGeometrySelection) -> None Apply an accepted geometry selection (e.g., from a future standalone FOV selector) to the existing pyAMPP GUI input fields. .. py:method:: apply_selector_result(result: pyampp.gxbox.selector_api.SelectorDialogResult) -> None Apply a full selector dialog result to GUI-visible and hidden state. .. py:method:: update_hpc_state(checked, coords_center=None) Updates the UI when Helioprojective coordinates are selected. :param checked: Whether the Helioprojective radio button is checked. :type checked: bool .. py:method:: update_hgc_state(checked, coords_center=None) Updates the UI when Heliographic Carrington coordinates are selected. :param checked: Whether the Heliographic Carrington radio button is checked. :type checked: bool .. py:method:: update_hgs_state(checked, coords_center=None) Updates the UI when Heliographic Stonyhurst coordinates are selected. :param checked: Whether the Heliographic Stonyhurst radio button is checked. :type checked: bool .. py:method:: update_coords_center(revert=False) .. py:method:: get_command() Constructs the command based on the current UI settings. :returns: The command as a list of strings. :rtype: list .. py:method:: execute_command() Executes the constructed command. .. py:method:: stop_command() Stops the running GXbox process if any. .. py:method:: save_command() Saves the current gx-fov2box command as a shell script. .. py:method:: copy_command() Copies the current gx-fov2box command line to the clipboard. .. py:method:: refresh_command() Refreshes the current session. .. py:method:: clear_command() Clears the status log. .. py:method:: clear_console() Clears the console panel. .. py:method:: copy_console() Copies the full console text to clipboard. .. py:method:: save_console() Saves the console output to a text file. .. py:method:: send_to_gxbox_view() .. py:function:: main(debug: bool = typer.Option(False, '--debug', help='Enable debug mode with an interactive IPython session.')) Entry point for the PyAmppGUI application. This function initializes the PyQt application and displays the main GUI window. Session/default field state is established inside ``PyAmppGUI`` during startup. :param debug: Enable debug mode with an interactive IPython session, defaults to False :type debug: bool, optional :raises SystemExit: Exits the application loop when the GUI is closed :return: None :rtype: NoneType .. rubric:: Examples .. code-block:: bash pyampp