Worldwind public release 0.2.1
[worldwind-tracker.git] / gov / nasa / worldwind / WorldWindow.java
blob78ef8df2bc0fba44c6259af62a130dfe610c7b47
1 /*
2 Copyright (C) 2001, 2006 United States Government
3 as represented by the Administrator of the
4 National Aeronautics and Space Administration.
5 All Rights Reserved.
6 */
7 package gov.nasa.worldwind;
9 import gov.nasa.worldwind.geom.*;
11 /**
12 * The top-level interface common to all toolkit-specific World Wind windows.
14 * @author Tom Gaskins
15 * @version $Id: WorldWindow.java 2068 2007-06-16 06:26:09Z tgaskins $
17 public interface WorldWindow extends AVList
19 /**
20 * Sets the model to display in this window. If <code>null</code> is specified for the model, the current model, if
21 * any, is disassociated with the window.
23 * @param model the model to display. May be <code>null</code>.
25 void setModel(Model model);
27 /**
28 * Returns the window's current model.
30 * @return the window's current model
32 Model getModel();
34 /**
35 * Sets the view to use when displaying this window's model. If <code>null</code> is specified for the view, the
36 * current view, if any, is disassociated with the window.
38 * @param view the view to use to display this window's model. May be null.
40 void setView(View view);
42 /**
43 * Returns this window's current view.
45 * @return the window's current view
47 View getView();
49 /**
50 * Sets the model to display in this window and the view used to display it. If <code>null</code> is specified for
51 * the model, the current model, if any, is disassociated with the window. If <code>null</code> is specified for the
52 * view, the current view, if any, is disassociated with the window.
54 * @param model the model to display. May be<code>null</code>.
55 * @param view the view to use to display this window's model. May be<code>null</code>.
57 void setModelAndView(Model model, View view);
59 /**
60 * Returns the scene controller assocciated with this instance.
62 * @return The scene controller associated with the instance, or null if no scene controller is associated.
64 SceneController getSceneController();
66 InputHandler getInputHandler();
68 void setInputHandler(InputHandler eventSource);
70 void addRenderingListener(RenderingListener listener);
72 void removeRenderingListener(RenderingListener listener);
74 void addSelectListener(SelectListener listener);
76 void removeSelectListener(SelectListener listener);
78 void addPositionListener(PositionListener listener);
80 void removePositionListener(PositionListener listener);
82 void redraw();
84 void redrawNow();
86 Position getCurrentPosition();
88 PickedObjectList getObjectsAtCurrentPosition();