BDirectWindow Class Reference

#include <DirectWindow.h>

Inheritance diagram for BDirectWindow:

BWindow BLooper BHandler BArchivable BDirectGLWindow List of all members.

Detailed Description

The BDirectWindow class gives your code direct access to the graphics frame buffer on the video card.

Library: libgame.so
Unlike BWindowScreen, BDirectWindow can be used in both full-screen and window modes - you can create a BDirectWindow that looks just like a normal window, but lets your code draw into it by directly accessing the frame buffer.
See also:
Using BDirectWindow

Hook Functions

DirectConnected()
The DirectConnected() hook function is called when the connection to the screen has been made, a change has occurred to the size or format of the frame buffer, a change has occurred to the position, size, or shape of the visible part of the content area of the window, or the connection to the screen is terminated.


Public Member Functions

 BDirectWindow (BRect frame, const char *title, window_type type, uint32 flags, uint32 workspace=B_CURRENT_WORKSPACE)
 BDirectWindow (BRect frame, const char *title, window_look look, window_feel feel, uint32 flags, uint32 workspace=B_CURRENT_WORKSPACE)
virtual ~BDirectWindow ()
virtual status_t Archive (BMessage *data, bool deep=true) const
virtual void Quit (void)
virtual void DispatchMessage (BMessage *message, BHandler *handler)
virtual void MessageReceived (BMessage *message)
virtual void FrameMoved (BPoint new_position)
virtual void WorkspacesChanged (uint32 old_ws, uint32 new_ws)
virtual void WorkspaceActivated (int32 ws, bool state)
virtual void FrameResized (float new_width, float new_height)
virtual void Minimize (bool minimize)
virtual void Zoom (BPoint rec_position, float rec_width, float rec_height)
virtual void ScreenChanged (BRect screen_size, color_space depth)
virtual void MenusBeginning ()
virtual void MenusEnded ()
virtual void WindowActivated (bool state)
virtual void Show ()
virtual void Hide ()
virtual BHandlerResolveSpecifier (BMessage *msg, int32 index, BMessage *specifier, int32 form, const char *property)
virtual status_t GetSupportedSuites (BMessage *data)
virtual status_t Perform (perform_code d, void *arg)
virtual void DirectConnected (direct_buffer_info *info)
status_t GetClippingRegion (BRegion *region, BPoint *origin=NULL) const
status_t SetFullScreen (bool enable)
bool IsFullScreen () const

Static Public Member Functions

static BArchivableInstantiate (BMessage *data)
static bool SupportsWindowMode (screen_id=B_MAIN_SCREEN_ID)


Constructor & Destructor Documentation

BDirectWindow BRect  frame,
const char *  title,
window_type  type,
uint32  flags,
uint32  workspace = B_CURRENT_WORKSPACE
 

BDirectWindow BRect  frame,
const char *  title,
window_look  look,
window_feel  feel,
uint32  flags,
uint32  workspace = B_CURRENT_WORKSPACE
 

virtual ~BDirectWindow  )  [virtual]
 


Member Function Documentation

virtual status_t Archive BMessage data,
bool  deep = true
const [virtual]
 

Reimplemented from BWindow.

virtual void DirectConnected direct_buffer_info info  )  [virtual]
 

Reimplemented in BDirectGLWindow.

virtual void DispatchMessage BMessage message,
BHandler handler
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void FrameMoved BPoint  new_position  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void FrameResized float  new_width,
float  new_height
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

status_t GetClippingRegion BRegion region,
BPoint origin = NULL
const
 

virtual status_t GetSupportedSuites BMessage data  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void Hide  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

static BArchivable* Instantiate BMessage data  )  [static]
 

Reimplemented from BWindow.

bool IsFullScreen  )  const
 

virtual void MenusBeginning  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void MenusEnded  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void MessageReceived BMessage message  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void Minimize bool  minimize  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual status_t Perform perform_code  d,
void *  arg
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void Quit void   )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual BHandler* ResolveSpecifier BMessage msg,
int32  index,
BMessage specifier,
int32  form,
const char *  property
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void ScreenChanged BRect  screen_size,
color_space  depth
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

status_t SetFullScreen bool  enable  ) 
 

virtual void Show  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

static bool SupportsWindowMode screen_id  = B_MAIN_SCREEN_ID  )  [static]
 

virtual void WindowActivated bool  state  )  [virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void WorkspaceActivated int32  ws,
bool  state
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void WorkspacesChanged uint32  old_ws,
uint32  new_ws
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.

virtual void Zoom BPoint  rec_position,
float  rec_width,
float  rec_height
[virtual]
 

Reimplemented from BWindow.

Reimplemented in BDirectGLWindow.


Copyright 2005 by yellowTAB GmbH, Be Inc., Palm Source Inc. and their respective legal successors
All rights reserved.