001/***************************************************************************** 002 * Copyright by The HDF Group. * 003 * Copyright by the Board of Trustees of the University of Illinois. * 004 * All rights reserved. * 005 * * 006 * This file is part of the HDF Java Products distribution. * 007 * The full copyright notice, including terms governing use, modification, * 008 * and redistribution, is contained in the files COPYING and Copyright.html. * 009 * COPYING can be found at the root of the source code distribution tree. * 010 * Or, see http://hdfgroup.org/products/hdf-java/doc/Copyright.html. * 011 * If you do not have access to either file, you may request a copy from * 012 * help@hdfgroup.org. * 013 ****************************************************************************/ 014 015package hdf.view; 016 017import hdf.object.HObject; 018 019/** 020 * 021 * Defines a list of APIs for the main HDFView windows 022 * 023 * @author Peter X. Cao 024 * @version 2.4 9/6/2007 025 */ 026public abstract interface ViewManager { 027 /** Data content is displayed, add the dataview to the main windows 028 * @param dataView 029 * the dataView whose presence in the main view is to be added. 030 */ 031 public abstract void addDataView(DataView dataView); 032 033 /** Data content is closed, remove the dataview from the main window 034 * @param dataView 035 * the dataView whose presence in the main view is to be removed. 036 */ 037 public abstract void removeDataView(DataView dataView); 038 039 /** 040 * Returns DataView that contains the specified data object. It is useful to 041 * avoid redundant display of data object that is opened already. 042 * 043 * @param dataObject 044 * the object whose presence in the main view is to be tested. 045 * 046 * @return DataView contains the specified data object, null if the data 047 * object is not displayed. 048 */ 049 public abstract DataView getDataView(HObject dataObject); 050 051 /** Display feedback message 052 * @param msg the status message to display 053 */ 054 public abstract void showStatus(String msg); 055 056 /** @return the current TreeView */ 057 public abstract TreeView getTreeView(); 058 059 /** 060 * Tree mouse event fired 061 * 062 * @param e The MouseEvent that occurred 063 */ 064 public abstract void mouseEventFired(java.awt.event.MouseEvent e); 065}