Class AbstractLaunchingTab

java.lang.Object
org.eclipse.debug.ui.AbstractLaunchConfigurationTab
com._1c.g5.v8.dt.internal.launching.ui.launchconfigurations.AbstractRuntimeClientTab
com._1c.g5.v8.dt.launching.ui.launchconfigurations.AbstractLaunchingTab
All Implemented Interfaces:
IRuntimeClientChangeListener, EventListener, org.eclipse.debug.core.IPrototypeAttributesLabelProvider, org.eclipse.debug.ui.ILaunchConfigurationTab, org.eclipse.debug.ui.ILaunchConfigurationTab2, ISelectionChangedListener, org.eclipse.swt.events.ModifyListener, org.eclipse.swt.events.SelectionListener, org.eclipse.swt.internal.SWTEventListener
Direct Known Subclasses:
MobileLaunchingMainTab, RemoteMobileApplicationTab, RuntimeClientMainTab

public abstract class AbstractLaunchingTab extends AbstractRuntimeClientTab implements org.eclipse.swt.events.ModifyListener, org.eclipse.swt.events.SelectionListener, ISelectionChangedListener
Abstract launch configuration tab with target project selection, infobase selection and 1C:Enterprise runtime installation selection.
  • Field Details

  • Constructor Details

    • AbstractLaunchingTab

      public AbstractLaunchingTab(String runtimeTypeId, String runtimewizardId)
      Creates an instance of AbstractLaunchingTab.
      Parameters:
      runtimeTypeId - the 1C:Enterprise installation type id, cannot be null
      runtimewizardId - the 1C:Enterprise installation wizard id, cannot be null
  • Method Details

    • setDefaults

      public void setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy configuration)
      Specified by:
      setDefaults in interface org.eclipse.debug.ui.ILaunchConfigurationTab
    • initializeFrom

      public void initializeFrom(org.eclipse.debug.core.ILaunchConfiguration configuration)
      Specified by:
      initializeFrom in interface org.eclipse.debug.ui.ILaunchConfigurationTab
      Overrides:
      initializeFrom in class AbstractRuntimeClientTab
    • deactivated

      public void deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy workingCopy)
      Specified by:
      deactivated in interface org.eclipse.debug.ui.ILaunchConfigurationTab
      Overrides:
      deactivated in class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
    • isValid

      public boolean isValid(org.eclipse.debug.core.ILaunchConfiguration launchConfig)
      Specified by:
      isValid in interface org.eclipse.debug.ui.ILaunchConfigurationTab
      Overrides:
      isValid in class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
    • modifyText

      public void modifyText(org.eclipse.swt.events.ModifyEvent e)
      Specified by:
      modifyText in interface org.eclipse.swt.events.ModifyListener
    • widgetSelected

      public void widgetSelected(org.eclipse.swt.events.SelectionEvent e)
      Specified by:
      widgetSelected in interface org.eclipse.swt.events.SelectionListener
    • widgetDefaultSelected

      public void widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent e)
      Specified by:
      widgetDefaultSelected in interface org.eclipse.swt.events.SelectionListener
    • selectionChanged

      public void selectionChanged(SelectionChangedEvent event)
      Specified by:
      selectionChanged in interface ISelectionChangedListener
    • initializeProjectViewer

      protected Optional<org.eclipse.core.resources.IProject> initializeProjectViewer(org.eclipse.debug.core.ILaunchConfiguration configuration) throws org.eclipse.core.runtime.CoreException
      Initializes launch configuation project UI settings based on the provided launch configuration.
      Parameters:
      configuration - the launch configuration to use, cannot be null
      Returns:
      the selected project if present
      Throws:
      org.eclipse.core.runtime.CoreException - if configuration read error occurred
    • initializeApplicationViewer

      protected Optional<IApplication> initializeApplicationViewer(org.eclipse.debug.core.ILaunchConfiguration configuration, org.eclipse.core.resources.IProject project) throws org.eclipse.core.runtime.CoreException
      Initializes launch configuation application UI settings based on the provided launch configuration.
      Parameters:
      configuration - the launch configuration to use, cannot be null
      project - the context project, cannot be null
      Returns:
      the selected application if present
      Throws:
      org.eclipse.core.runtime.CoreException - if configuration read error occurred
    • initializeInstallationViewer

      protected void initializeInstallationViewer(org.eclipse.debug.core.ILaunchConfiguration configuration, String attribute, IApplication application) throws org.eclipse.core.runtime.CoreException
      Initializes launch configuation 1C:Enterprise platform UI settings based on the provided launch configuration.
      Parameters:
      configuration - the launch configuration to use, cannot be null
      attribute - the launch configuration installation attribute, cannot be null
      application - the context application or null if none
      Throws:
      org.eclipse.core.runtime.CoreException - if configuration read error occurred
    • createProjectSettings

      protected void createProjectSettings(org.eclipse.swt.widgets.Composite parent)
      Creates project settings UI elements.
      Parameters:
      parent - the parent composite to create on, cannot be null
    • handleProjectSelection

      protected void handleProjectSelection(org.eclipse.core.resources.IProject project)
      Handles a project selection.
      Parameters:
      project - the selected project, cannot be null
    • handleApplicationSelection

      protected void handleApplicationSelection(IApplication application)
      Handles an application selection.
      Parameters:
      application - the selected application, cannot be null
    • createApplicationSettings

      protected void createApplicationSettings(org.eclipse.swt.widgets.Composite parent, int hSpan)
      Creates application settings UI elements.
      Parameters:
      parent - the parent composite to create on, cannot be null
      hSpan - the horizotnal span of the application viewer
    • handleUseDefaultInfobaseLaunchSelection

      protected void handleUseDefaultInfobaseLaunchSelection()
      Handles use default infobase launch button selection.
    • handleUseInfobaseLaunchSelection

      protected void handleUseInfobaseLaunchSelection()
      Handles use infobase launch button selection.
    • createRuntimeInstallationSettings

      protected void createRuntimeInstallationSettings(org.eclipse.swt.widgets.Composite parent, String label, int viewerSpan)
      Creates 1C:Enterprise runtime installations settings UI elements.
      Parameters:
      parent - the parent composite to create on, cannot be null
      label - the viewer label text, cannot be null
      viewerSpan - the viewer horizontal span
    • createAddRuntimeButton

      protected void createAddRuntimeButton(org.eclipse.swt.widgets.Composite parent)
      Creates "Add new runtime" button.
      Parameters:
      parent - the parent composite to create on, cannot be null
    • validateProject

      protected boolean validateProject()
      Validates project selection.
      Returns:
      whether this selection is in a valid state
    • validateProject

      protected boolean validateProject(ApplicationUsePurpose usePurpose, String label)
      Validates project selection and project configuration use purpose.
      Parameters:
      usePurpose - the use purpose to check, cannot be null
      label - the label for the use purpose UI usage, cannot be null
      Returns:
      whether this selection is in a valid state
    • validateRuntimeInstallation

      protected boolean validateRuntimeInstallation()
      Validates 1C:Enterprise runtime installation selection.
      Returns:
      whether this selection is in a valid state
    • getSelectedInstallation

      protected Optional<IResolvableRuntimeInstallation> getSelectedInstallation()
      Returns the selected 1C:Enterprise resolvable installation in the launching tab if present.
      Returns:
      the selected 1C:Enterprise resolvable installation in the launching tab if present
    • getSelectedApplication

      protected Optional<IApplication> getSelectedApplication()
      Returns the selected application in the launching tab if present.
      Returns:
      the selected application in the launching tab if present
    • getSelectedProject

      protected Optional<org.eclipse.core.resources.IProject> getSelectedProject()
      Returns the selected project in the launching tab if present.
      Returns:
      the selected project in the launching tab if present
    • getContextProject

      protected Optional<org.eclipse.core.resources.IProject> getContextProject()
      Returns the current context project if present.
      Returns:
      the current context project if present
    • getApplications

      protected List<Object> getApplications(org.eclipse.core.resources.IProject project)
      Gets list of applications supported by this launch type for the specified project
      Parameters:
      project - IProject for getting its IApplication, cannot be null
      Returns:
      list of supported by this launch type IApplications for specified IProject, never null