hdf.view

## Class HDFView

- Object
- - hdf.view.HDFView

- All Implemented Interfaces:
    ViewManager

      public class HDFView
      extends Object
      implements ViewManager

  HDFView is the main class of this HDF visual tool. It is used to layout the graphical components of the hdfview. The major GUI components of the HDFView include Menubar, Toolbar, TreeView, ContentView, and MessageArea.

  The HDFView is designed in such a way that it does not have direct access to the HDF library. All the HDF library access is done through HDF objects. Therefore, the HDFView package depends on the object package but not the library package. The source code of the view package (hdf.view) should be compiled with the library package (hdf.hdflib and hdf.hdf5lib).

  Version:
    2.4 //2015
  Author:
    Jordan T. Henderson

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `HDFView(String root)` Constructs HDFView with a given root directory, where the HDFView is installed, and opens the given files in the viewer.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDataView(DataView dataView)` Data content is displayed, add the dataview to the main windows
    `void` | `closeFile(FileFormat theFile)`
    `DataView` | `getDataView(HObject dataObject)` Returns DataView that contains the specified data object.
    `static List<String>` | `getListOfImageViews()`
    `static List<?>` | `getListOfMetaDataViews()`
    `static List<?>` | `getListOfPaletteViews()`
    `static List<?>` | `getListOfTableViews()`
    `static List<String>` | `getListOfTreeViews()`
    `boolean` | `getTestState()`
    `hdf.view.TreeView.TreeView` | `getTreeView()`
    `org.eclipse.swt.widgets.Combo` | `getUrlBar()`
    `static void` | `main(String[] args)` The starting point of this application.
    `org.eclipse.swt.widgets.Shell` | `openMainWindow(List<File> flist, int width, int height, int x, int y)` Creates HDFView with a given size, and opens the given files in the viewer.
    `void` | `removeDataView(DataView dataView)` Data content is closed, remove the dataview from the main window
    `void` | `runMainWindow()`
    `void` | `setTestState(boolean testing)` Set the testing state that determines if HDFView is being executed for GUI testing.
    `void` | `showMetaData(HObject obj)`
    `void` | `showStatus(String msg)` Display feedback message.
    `void` | `writeDataToFile(FileFormat theFile)` Write the change of data to the given file.

    - ### Methods inherited from class Object

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

- - ### Constructor Detail

    - #### HDFView

          public HDFView(String root)

      Constructs HDFView with a given root directory, where the HDFView is installed, and opens the given files in the viewer.
      Parameters:
        `root` - the directory where the HDFView is installed.

  - ### Method Detail

    - #### openMainWindow

          public org.eclipse.swt.widgets.Shell openMainWindow(List<File> flist,
                                                              int width,
                                                              int height,
                                                              int x,
                                                              int y)

      Creates HDFView with a given size, and opens the given files in the viewer.
      Parameters:
        `flist` - a list of files to open.
        `width` - the width of the app in pixels
        `height` - the height of the app in pixels
        `x` - the coord x of the app in pixels
        `y` - the coord y of the app in pixels
      Returns:
        the newly-created HDFView Shell

    - #### runMainWindow

          public void runMainWindow()

    - #### getListOfTreeViews

          public static final List<String> getListOfTreeViews()

      Returns:
        a list of treeview implementations.

    - #### getListOfImageViews

          public static final List<String> getListOfImageViews()

      Returns:
        a list of imageview implementations.

    - #### getListOfTableViews

          public static final List<?> getListOfTableViews()

      Returns:
        a list of tableview implementations.

    - #### getListOfMetaDataViews

          public static final List<?> getListOfMetaDataViews()

      Returns:
        a list of metaDataview implementations.

    - #### getListOfPaletteViews

          public static final List<?> getListOfPaletteViews()

      Returns:
        a list of paletteview implementations.

    - #### getTreeView

          public hdf.view.TreeView.TreeView getTreeView()

      Specified by:
        `getTreeView` in interface `ViewManager`
      Returns:
        the current TreeView

    - #### getUrlBar

          public org.eclipse.swt.widgets.Combo getUrlBar()

    - #### showStatus

          public void showStatus(String msg)

      Display feedback message.
      Specified by:
        `showStatus` in interface `ViewManager`
      Parameters:
        `msg` - the message to display.

    - #### showMetaData

          public void showMetaData(HObject obj)

    - #### closeFile

          public void closeFile(FileFormat theFile)

    - #### writeDataToFile

          public void writeDataToFile(FileFormat theFile)

      Write the change of data to the given file.
      Parameters:
        `theFile` - The file to be updated.

    - #### addDataView

          public void addDataView(DataView dataView)

      Description copied from interface: `ViewManager`
      Data content is displayed, add the dataview to the main windows
      Specified by:
        `addDataView` in interface `ViewManager`
      Parameters:
        `dataView` - the dataView whose presence in the main view is to be added.

    - #### removeDataView

          public void removeDataView(DataView dataView)

      Description copied from interface: `ViewManager`
      Data content is closed, remove the dataview from the main window
      Specified by:
        `removeDataView` in interface `ViewManager`
      Parameters:
        `dataView` - the dataView whose presence in the main view is to be removed.

    - #### getDataView

          public DataView getDataView(HObject dataObject)

      Description copied from interface: `ViewManager`
      Returns DataView that contains the specified data object. It is useful to avoid redundant display of data object that is opened already.
      Specified by:
        `getDataView` in interface `ViewManager`
      Parameters:
        `dataObject` - the object whose presence in the main view is to be tested.
      Returns:
        DataView contains the specified data object, null if the data object is not displayed.

    - #### setTestState

          public void setTestState(boolean testing)

      Set the testing state that determines if HDFView is being executed for GUI testing.
      Parameters:
        `testing` - Provides SWTBot native dialog compatibility workarounds if set to true.

    - #### getTestState

          public boolean getTestState()

    - #### main

          public static void main(String[] args)

      The starting point of this application.

           Usage: java(w)
                  -Dhdf.hdf5lib.H5.hdf5lib="your HDF5 library path"
                  -Dhdf.hdflib.HDFLibrary.hdflib="your HDF4 library path"
                  -root "the directory where the HDFView is installed"
                  [filename] "the file to open"

      Parameters:
        `args` - the command line arguments

Copyright © 2018. All Rights Reserved.