org.eclipse.net4j.util.ui.views

## Class MasterDetailsView

- java.lang.Object
- - org.eclipse.core.commands.common.EventManager
  - - org.eclipse.ui.part.WorkbenchPart
    - - org.eclipse.ui.part.ViewPart
      - - org.eclipse.net4j.util.ui.views.MultiViewersView
        - - org.eclipse.net4j.util.ui.views.MasterDetailsView

- All Implemented Interfaces:
    IAdaptable, IExecutableExtension, IPersistable, IViewPart, IWorkbenchPart, IWorkbenchPart2, IWorkbenchPart3, ISetSelectionTarget, IWorkbenchPartOrientation

      public abstract class MasterDetailsView
      extends MultiViewersView

  Since:
    2.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected class` | `MasterDetailsView.RefreshAction`

    - ### Nested classes/interfaces inherited from class org.eclipse.net4j.util.ui.views.MultiViewersView

      `MultiViewersView.MessageType`

  - ### Field Summary

    - ### Fields inherited from interface org.eclipse.ui.IWorkbenchPart

      `PROP_TITLE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MasterDetailsView()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `adjustDetails(java.lang.Object masterElement)`
    `protected abstract StructuredViewer` | `createDetail(Composite parent, java.lang.String title)`
    `protected abstract StructuredViewer` | `createMaster(Composite parent)`
    `protected Control` | `createUI(Composite parent)`
    `protected void` | `fillCoolBar(IContributionManager manager)`
    `protected void` | `fillLocalPullDown(IMenuManager manager)`
    `int` | `getCurrentDetailIndex()`
    `java.lang.String` | `getCurrentDetailTitle()`
    `java.lang.Object` | `getCurrentMasterElement()`
    `StructuredViewer[]` | `getDetails()`
    `java.lang.String[]` | `getDetailTitles()`
    `protected abstract java.lang.String[]` | `getDetailTitles(java.lang.Object masterElement)`
    `StructuredViewer` | `getMaster()`
    `static int` | `indexOf(CTabItem[] items, java.lang.String title)`
    `protected void` | `masterSelectionChanged(SelectionChangedEvent event)`
    `protected void` | `setDetailInput(StructuredViewer viewer, java.lang.Object input)`

    - ### Methods inherited from class org.eclipse.net4j.util.ui.views.MultiViewersView

      `closeView, createPartControl, doubleClicked, fillContextMenu, fillLocalToolBar, getCurrentViewer, getDisplay, getShell, refreshElement, refreshViewer, revealElement, selectReveal, setCurrentViewer, setFocus, showMessage, showMessage, updateLabels`

    - ### Methods inherited from class org.eclipse.ui.part.ViewPart

      `checkSite, getViewSite, init, init, saveState, setContentDescription, setInitializationData, setPartName`

    - ### Methods inherited from class org.eclipse.ui.part.WorkbenchPart

      `addPartPropertyListener, addPropertyListener, dispose, firePartPropertyChanged, firePropertyChange, getAdapter, getConfigurationElement, getContentDescription, getDefaultImage, getOrientation, getPartName, getPartProperties, getPartProperty, getSite, getTitle, getTitleImage, getTitleToolTip, removePartPropertyListener, removePropertyListener, setPartProperty, setSite, setTitle, setTitleImage, setTitleToolTip, showBusy`

    - ### Methods inherited from class org.eclipse.core.commands.common.EventManager

      `addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.ui.IWorkbenchPart

      `addPropertyListener, dispose, getSite, getTitle, getTitleImage, getTitleToolTip, removePropertyListener`

    - ### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

      `getAdapter`

- - ### Constructor Detail

    - #### MasterDetailsView

          public MasterDetailsView()

  - ### Method Detail

    - #### getMaster

          public StructuredViewer getMaster()

    - #### getDetails

          public StructuredViewer[] getDetails()

    - #### getDetailTitles

          public java.lang.String[] getDetailTitles()

    - #### getCurrentMasterElement

          public java.lang.Object getCurrentMasterElement()

    - #### getCurrentDetailIndex

          public int getCurrentDetailIndex()

    - #### getCurrentDetailTitle

          public java.lang.String getCurrentDetailTitle()

    - #### createUI

          protected Control createUI(Composite parent)

      Specified by:
        `createUI` in class `MultiViewersView`

    - #### fillLocalPullDown

          protected void fillLocalPullDown(IMenuManager manager)

      Overrides:
        `fillLocalPullDown` in class `MultiViewersView`

    - #### masterSelectionChanged

          protected void masterSelectionChanged(SelectionChangedEvent event)

    - #### adjustDetails

          protected void adjustDetails(java.lang.Object masterElement)

    - #### setDetailInput

          protected void setDetailInput(StructuredViewer viewer,
                                        java.lang.Object input)

    - #### fillCoolBar

          protected void fillCoolBar(IContributionManager manager)

    - #### createMaster

          protected abstract StructuredViewer createMaster(Composite parent)

    - #### createDetail

          protected abstract StructuredViewer createDetail(Composite parent,
                                                           java.lang.String title)

    - #### getDetailTitles

          protected abstract java.lang.String[] getDetailTitles(java.lang.Object masterElement)

    - #### indexOf

          public static int indexOf(CTabItem[] items,
                                    java.lang.String title)

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html