Contents User Forum Source Index APIs by Task APIs by Level Data


G3D::CameraControlWindow Class Reference

Gui used by DeveloperWindow default for recording camera position and making splines. More...

#include <CameraControlWindow.h>

Inherits G3D::GuiWindow.

List of all members.

Public Types

enum  CloseAction { NO_CLOSE, IGNORE_CLOSE, HIDE_ON_CLOSE, REMOVE_ON_CLOSE }
typedef ReferenceCountedPointer<
class CameraControlWindow
Ref
enum  Style { NORMAL_FRAME_STYLE, TOOL_FRAME_STYLE, DIALOG_FRAME_STYLE, NO_FRAME_STYLE }

Public Member Functions

virtual GuiDraweraddDrawer (const GuiCaption &caption="", GuiDrawer::Side side=GuiDrawer::RIGHT_SIDE)
const Rect2DclientRect () const
virtual void fireEvent (const GEvent &event)
bool focused () const
bool morphing () const
void morphTo (const Rect2D &r)
void moveToCenter ()
virtual bool onEvent (const GEvent &event)
virtual void onLogic ()
virtual void onNetwork ()
virtual void onPose (Array< PosedModel::Ref > &posedArray, Array< PosedModel2DRef > &posed2DArray)=0
virtual void onPose (Array< PosedModelRef > &posedArray, Array< PosedModel2DRef > &posed2DArray)
virtual void onSimulation (RealTime rdt, SimTime sdt, SimTime idt)
virtual void onUserInput (UserInput *)
void pack ()
GuiPanepane ()
const Rect2Drect () const
void ReferenceCountedObject_zeroWeakPointers ()
virtual void setManager (WidgetManager *m)
virtual void setRect (const Rect2D &r)
void setVisible (bool v)
void showModal (GuiWindow::Ref parent)
void showModal (GWindow *osWindow)
GuiSkinRef skin () const
bool visible () const
virtual GWindowwindow () const

Static Public Member Functions

static Ref create (const GuiCaption &windowTitle, const GuiSkinRef &skin, const Rect2D &rect=Rect2D::xywh(100, 100, 100, 50), Style style=NORMAL_FRAME_STYLE, CloseAction=NO_CLOSE)
static Ref create (const FirstPersonManipulatorRef &manualManipulator, const UprightSplineManipulatorRef &trackManipulator, const Pointer< Manipulator::Ref > &cameraManipulator, const GuiSkinRef &skin)

Public Attributes

AtomicInt32 ReferenceCountedObject_refCount
_WeakPtrLinkedListReferenceCountedObject_weakPointer

Protected Member Functions

 CameraControlWindow (const FirstPersonManipulatorRef &manualManipulator, const UprightSplineManipulatorRef &trackManipulator, const Pointer< Manipulator::Ref > &cameraManipulator, const GuiSkinRef &skin)
std::string cameraLocation () const
void loadSpline (const std::string &filename)
void setCameraLocation (const std::string &s)
void sync ()
void updateTrackFiles ()

Protected Attributes

GuiCaption autoHelpCaption
GuiTextBoxcameraLocationTextBox
Pointer< Manipulator::RefcameraManipulator
GuiCheckBoxcyclicCheckBox
GuiButtondrawerButton
GuiPanedrawerButtonPane
GuiCaption drawerCollapseCaption
GuiCaption drawerExpandCaption
GuiLabelhelpLabel
bool m_expanded
WidgetManagerm_manager
GuiCaption manualHelpCaption
FirstPersonManipulatorRef manualManipulator
bool manualOperation
GuiRadioButtonplayButton
GuiCaption playHelpCaption
GuiRadioButtonrecordButton
GuiCaption recordHelpCaption
GuiButtonsaveButton
GuiRadioButtonstopButton
Array< std::string > trackFileArray
int trackFileIndex
GuiLabeltrackLabel
GuiDropDownListtrackList
UprightSplineManipulatorRef trackManipulator
GuiCheckBoxvisibleCheckBox

Static Protected Attributes

static const Vector2 bigSize
static const Vector2 smallSize


Detailed Description

Gui used by DeveloperWindow default for recording camera position and making splines.

See also:
G3D::DeveloperWindow, G3D::GApp


Member Typedef Documentation


Member Enumeration Documentation

enum G3D::GuiWindow::CloseAction [inherited]

Controls the behavior when the close button is pressed (if there is one).

NO_CLOSE - Do not show the close button IGNORE_CLOSE - Fire G3D::GEvent::GUI_CLOSE event but take no further action HIDE_ON_CLOSE - Set the window visibility to false and fire G3D::GEvent::GUI_CLOSE REMOVE_ON_CLOSE - Remove this GuiWindow from its containing WidgetManager and fire G3D::GEvent::GUI_CLOSE with a NULL window argument (since the window may be garbage collected before the event is received).

Enumerator:
NO_CLOSE 
IGNORE_CLOSE 
HIDE_ON_CLOSE 
REMOVE_ON_CLOSE 

enum G3D::GuiWindow::Style [inherited]

Controls the appearance of the window's borders and background.

NORMAL_FRAME_STYLE - regular border and title TOOL_FRAME_STYLE - small title, thin border DIALOG_FRAME_STYLE - thicker border NO_FRAME_STYLE - do not render any background at all

Enumerator:
NORMAL_FRAME_STYLE 
TOOL_FRAME_STYLE 
DIALOG_FRAME_STYLE 
NO_FRAME_STYLE 


Constructor & Destructor Documentation

G3D::CameraControlWindow::CameraControlWindow ( const FirstPersonManipulatorRef manualManipulator,
const UprightSplineManipulatorRef trackManipulator,
const Pointer< Manipulator::Ref > &  cameraManipulator,
const GuiSkinRef skin 
) [protected]


Member Function Documentation

virtual GuiDrawer* G3D::GuiWindow::addDrawer ( const GuiCaption caption = "",
GuiDrawer::Side  side = GuiDrawer::RIGHT_SIDE 
) [inline, virtual, inherited]

Drawers are like windows that slide out of the side of another GuiWindow.

Drawers are initially sized based on the side of the window that they slide out of, but they can be explicitly sized. Multiple drawers can be attached to the same side, however it is up to the caller to ensure that they do not overlap.

Parameters:
side Side that the drawer sticks out of

std::string G3D::CameraControlWindow::cameraLocation (  )  const [protected]

const Rect2D& G3D::GuiWindow::clientRect (  )  const [inline, inherited]

Interior bounds of the window, absolute on the GWindow.

static Ref G3D::GuiWindow::create ( const GuiCaption windowTitle,
const GuiSkinRef skin,
const Rect2D rect = Rect2D::xywh(100, 100, 100, 50),
Style  style = NORMAL_FRAME_STYLE,
CloseAction  = NO_CLOSE 
) [static, inherited]

As controls are added, the window will automatically grow to contain them as needed.

static Ref G3D::CameraControlWindow::create ( const FirstPersonManipulatorRef manualManipulator,
const UprightSplineManipulatorRef trackManipulator,
const Pointer< Manipulator::Ref > &  cameraManipulator,
const GuiSkinRef skin 
) [static]

Parameters:
cameraManipulator The manipulator that should drive the camera.

This will be assigned to as the program runs.

virtual void G3D::Widget::fireEvent ( const GEvent event  )  [virtual, inherited]

Fire an event on the containing window.

Reimplemented in G3D::WidgetManager.

bool G3D::GuiWindow::focused (  )  const [inline, inherited]

Is this window in focus on the WidgetManager?

void G3D::CameraControlWindow::loadSpline ( const std::string &  filename  )  [protected]

bool G3D::GuiWindow::morphing (  )  const [inline, inherited]

Returns true while a morph is in progress.

void G3D::GuiWindow::morphTo ( const Rect2D r  )  [inherited]

Causes the window to change shape and/or position to meet the specified location.

The window will not respond to drag events while it is morphing.

void G3D::GuiWindow::moveToCenter (  )  [inherited]

Move to the center of the screen.

virtual bool G3D::CameraControlWindow::onEvent ( const GEvent event  )  [virtual]

Returning true consumes the event and prevents other GModules from seeing it.

Motion events (GEventType::MOUSEMOTION, GEventType::JOYHATMOTION, JGEventType::OYBALLMOTION, and GEventType::JOYAXISMOTION) cannot be cancelled.

Reimplemented from G3D::GuiWindow.

virtual void G3D::GuiWindow::onLogic (  )  [inline, virtual, inherited]

Implements G3D::Widget.

virtual void G3D::GuiWindow::onNetwork (  )  [inline, virtual, inherited]

Implements G3D::Widget.

virtual void G3D::Widget::onPose ( Array< PosedModel::Ref > &  posedArray,
Array< PosedModel2DRef > &  posed2DArray 
) [pure virtual, inherited]

Appends a posed model for this object to the array, if it has a graphic representation.

The posed model appended is allowed to reference the agent and is allowed to mutate if the agent is mutated.

Implemented in G3D::FirstPersonManipulator, G3D::GConsole, G3D::ThirdPersonManipulator, and G3D::WidgetManager.

virtual void G3D::GuiWindow::onPose ( Array< PosedModelRef > &  posedArray,
Array< PosedModel2DRef > &  posed2DArray 
) [virtual, inherited]

virtual void G3D::GuiWindow::onSimulation ( RealTime  rdt,
SimTime  sdt,
SimTime  idt 
) [inline, virtual, inherited]

Implements G3D::Widget.

virtual void G3D::CameraControlWindow::onUserInput ( UserInput  )  [virtual]

Reimplemented from G3D::GuiWindow.

void G3D::GuiWindow::pack (  )  [inherited]

Resize the pane so that all of its controls are visible and so that there is no wasted space, then resize the window around the pane.

See also:
G3D::GuiPane::pack

GuiPane* G3D::GuiWindow::pane (  )  [inline, inherited]

const Rect2D& G3D::GuiWindow::rect (  )  const [inline, inherited]

Window bounds, including shadow and glow, absolute on the GWindow.

void G3D::ReferenceCountedObject::ReferenceCountedObject_zeroWeakPointers (  )  [inline, inherited]

Automatically called immediately before the object is deleted.

This is not called from the destructor because it needs to be invoked before the subclass destructor.

void G3D::CameraControlWindow::setCameraLocation ( const std::string &  s  )  [protected]

virtual void G3D::Widget::setManager ( WidgetManager m  )  [inline, virtual, inherited]

Called by the WidgetManager when this module is added to it.

The argument may be NULL

Reimplemented in G3D::DeveloperWindow.

virtual void G3D::CameraControlWindow::setRect ( const Rect2D r  )  [virtual]

Set the border bounds relative to the GWindow.

The window may render outside the bounds because of drop shadows and glows.

Reimplemented from G3D::GuiWindow.

void G3D::GuiWindow::setVisible ( bool  v  )  [inline, inherited]

Hide this entire window.

The window cannot have focus if it is not visible.

Removing the GuiWindow from the WidgetManager is more efficient than making it invisible.

void G3D::GuiWindow::showModal ( GuiWindow::Ref  parent  )  [inherited]

void G3D::GuiWindow::showModal ( GWindow osWindow  )  [inherited]

Blocks until the dialog is closed (visible = false).

Do not call between RenderDevice::beginFrame and RenderDevice::endFrame.

GuiSkinRef G3D::GuiWindow::skin (  )  const [inline, inherited]

void G3D::CameraControlWindow::sync (  )  [protected]

Control source that the Gui thinks should be in use.

void G3D::CameraControlWindow::updateTrackFiles (  )  [protected]

Updates the trackFileArray from the list of track files.

bool G3D::GuiWindow::visible (  )  const [inline, inherited]

virtual GWindow* G3D::Widget::window (  )  const [virtual, inherited]

Returns the operating system window that is currently rendering this Widget.

Reimplemented in G3D::WidgetManager.


Member Data Documentation

const Vector2 G3D::CameraControlWindow::bigSize [static, protected]

Allows the user to override the current camera position.

The manipulator from which the camera is copying its frame.

Button to expand and contract additional manual controls.

The button must be in its own pane so that it can float over the expanded pane.

If true, the window is big enough to show all controls.

WidgetManager* G3D::Widget::m_manager [protected, inherited]

The manager, set by setManager().

This cannot be a reference counted pointer because that would create a cycle between the Widget and its manager.

True when the user has chosen to override program control of the camera.

The long name is to keep this from accidentally conflicting with a subclass's variable name.

Do not use or explicitly manipulate this value--its type may change in the future and is not part of the supported API.

Linked list of all weak pointers that reference this (some may be on the stack!).

Do not use or explicitly manipulate this value.

const Vector2 G3D::CameraControlWindow::smallSize [static, protected]

Array of all .trk files in the current directory.

Index into trackFileArray.

Label for trackList.

Separate in order to allow condensed spacing


The documentation for this class was generated from the following file:
Generated on Thu Aug 2 11:40:45 2007 for G3D by doxygen 1.5.2
Hosted by SourceForge.net Logo