Panda3D
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties
Public Member Functions | Static Public Member Functions
PGScrollFrame Class Reference

This is a special kind of frame that pretends to be much larger than it actually is. More...

Inheritance diagram for PGScrollFrame:
PGVirtualFrame PGSliderBarNotify PGItem PandaNode TypedWritable Namable LinkedListNode ReferenceCount TypedObject

List of all members.

Public Member Functions

 PGScrollFrame (string name)
 PGScrollFrame ()
 clearHorizontalSlider ()
 Removes the horizontal scroll bar from control of the frame.
 clearVerticalSlider ()
 Removes the vertical scroll bar from control of the frame.
 clearVirtualFrame ()
 Removes the virtual frame from the item.
bool getAutoHide ()
 Returns the auto_hide flag.
PGSliderBar getHorizontalSlider ()
 Returns the PGSliderBar that serves as the horizontal scroll bar for this frame, if any, or NULL if it is not set.
bool getManagePieces ()
 Returns the manage_pieces flag.
PGSliderBar getVerticalSlider ()
 Returns the PGSliderBar that serves as the vertical scroll bar for this frame, if any, or NULL if it is not set.
VBase4 const getVirtualFrame ()
 Returns the bounding rectangle of the virtual frame.
bool hasVirtualFrame ()
 Returns true if the virtual frame has a bounding rectangle; see set_virtual_frame().
 recompute ()
 Forces the PGScrollFrame to recompute itself right now.
 remanage ()
 Manages the position and size of the scroll bars.
 setAutoHide (bool auto_hide)
 Sets the auto_hide flag.
 setHorizontalSlider (PGSliderBar horizontal_slider)
 Sets the PGSliderBar object that will serve as the horizontal scroll bar for this frame.
 setManagePieces (bool manage_pieces)
 Sets the manage_pieces flag.
 setup (float width, float height, float left, float right, float bottom, float top, float slider_width, float bevel)
 Creates a PGScrollFrame with the indicated dimensions, and the indicated virtual frame.
 setVerticalSlider (PGSliderBar vertical_slider)
 Sets the PGSliderBar object that will serve as the vertical scroll bar for this frame.
 setVirtualFrame (VBase4 const virtual_frame)
 Sets the bounding rectangle of the virtual frame.
 setVirtualFrame (float left, float right, float bottom, float top)
 Sets the bounding rectangle of the virtual frame.

Static Public Member Functions

static TypeHandle getClassType ()

Detailed Description

This is a special kind of frame that pretends to be much larger than it actually is.

You can scroll through the frame, as if you're looking through a window at the larger frame beneath. All children of this frame node are scrolled and clipped as if they were children of the larger, virtual frame.

This is implemented as a specialization of PGVirtualFrame, which handles the meat of the virtual canvas. This class adds automatic support for scroll bars, and restricts the virtual transform to translate only (no scale or rotate).


Constructor & Destructor Documentation

PGScrollFrame ( string  name)

Member Function Documentation

Removes the horizontal scroll bar from control of the frame.

It is your responsibility to actually remove or hide the object itself.

Removes the vertical scroll bar from control of the frame.

It is your responsibility to actually remove or hide the object itself.

Removes the virtual frame from the item.

This effectively sets the virtual frame to the same size as the clip frame. Scrolling will no longer be possible.

bool getAutoHide ( )

Returns the auto_hide flag.

See set_auto_hide().

static TypeHandle getClassType ( ) [static]

Reimplemented from PGVirtualFrame.

Returns the PGSliderBar that serves as the horizontal scroll bar for this frame, if any, or NULL if it is not set.

bool getManagePieces ( )

Returns the manage_pieces flag.

See set_manage_pieces().

Returns the PGSliderBar that serves as the vertical scroll bar for this frame, if any, or NULL if it is not set.

Returns the bounding rectangle of the virtual frame.

See set_virtual_frame(). If has_virtual_frame() is false, this returns the item's clip frame.

bool hasVirtualFrame ( )

Returns true if the virtual frame has a bounding rectangle; see set_virtual_frame().

Most PGScrollFrame objects will have a virtual frame.

recompute ( )

Forces the PGScrollFrame to recompute itself right now.

Normally this should not be required.

remanage ( )

Manages the position and size of the scroll bars.

Normally this should not need to be called directly.

setAutoHide ( bool  auto_hide)

Sets the auto_hide flag.

When this is true, the two scroll bars are automatically hidden if they are not needed (that is, if the virtual frame would fit within the clip frame without them), and they are automatically shown when they are needed.

Setting this flag true forces the manage_pieces flag to also be set true.

setHorizontalSlider ( PGSliderBar  horizontal_slider)

Sets the PGSliderBar object that will serve as the horizontal scroll bar for this frame.

It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.

setManagePieces ( bool  manage_pieces)

Sets the manage_pieces flag.

When this is true, the sub-pieces of the scroll frame--that is, the two scroll bars--are automatically positioned and/or resized when the scroll frame's overall frame is changed. They are also automatically resized to fill in the gap when one or the other is hidden.

setup ( float  width,
float  height,
float  left,
float  right,
float  bottom,
float  top,
float  slider_width,
float  bevel 
)

Creates a PGScrollFrame with the indicated dimensions, and the indicated virtual frame.

setVerticalSlider ( PGSliderBar  vertical_slider)

Sets the PGSliderBar object that will serve as the vertical scroll bar for this frame.

It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.

setVirtualFrame ( VBase4 const  virtual_frame)

Sets the bounding rectangle of the virtual frame.

This is the size of the large, virtual canvas which we can see only a portion of at any given time.

setVirtualFrame ( float  left,
float  right,
float  bottom,
float  top 
)

Sets the bounding rectangle of the virtual frame.

This is the size of the large, virtual canvas which we can see only a portion of at any given time.

 All Classes Namespaces Functions Variables Enumerations Enumerator Properties