Panda3D
Public Types | Public Member Functions

PGFrameStyle Class Reference

List of all members.

Public Types

enum  Type {
  T_none, T_flat, T_bevel_out, T_bevel_in,
  T_groove, T_ridge, T_texture_border
}

Public Member Functions

 PGFrameStyle (const PGFrameStyle &copy)
void clear_texture ()
 Removes the texture from the frame.
NodePath generate_into (const NodePath &parent, const LVecBase4f &frame, int sort=0)
 Generates geometry representing a frame of the indicated size, and parents it to the indicated node, with the indicated scene graph sort order.
const Colorfget_color () const
 Returns the dominant color of the frame.
LVecBase4f get_internal_frame (const LVecBase4f &frame) const
 Computes the size of the internal frame, given the indicated external frame, appropriate for this kind of frame style.
Textureget_texture () const
 Returns the texture that has been applied to the frame, or NULL if no texture has been applied.
Type get_type () const
 Returns the basic type of frame.
const LVecBase2fget_uv_width () const
 See set_uv_width().
const LVecBase2fget_visible_scale () const
 Returns the scale factor on the visible representation of the frame, in the X and Y directions.
const LVecBase2fget_width () const
 Returns the width parameter, which has meaning only for certain frame types.
bool has_texture () const
 Returns true if a texture has been applied to the frame.
void operator= (const PGFrameStyle &copy)
void output (ostream &out) const
void set_color (const Colorf &color)
 Sets the dominant color of the frame.
void set_color (float r, float g, float b, float a)
 Sets the dominant color of the frame.
void set_texture (Texture *texture)
 Specifies a texture that should be applied to the frame.
void set_type (Type type)
 Sets the basic type of frame.
void set_uv_width (const LVecBase2f &uv_width)
 Sets the uv_width parameter, which indicates the amount of the texture that is consumed by the inner bevel--the width in texture space of the amount indicated by set_width.
void set_uv_width (float u, float v)
 Sets the uv_width parameter, which indicates the amount of the texture that is consumed by the inner bevel--the width in texture space of the amount indicated by set_width.
void set_visible_scale (float x, float y)
 Sets a scale factor on the visible representation of the frame, in the X and Y directions.
void set_visible_scale (const LVecBase2f &visible_scale)
 Sets a scale factor on the visible representation of the frame, in the X and Y directions.
void set_width (const LVecBase2f &width)
 Sets the width parameter, which has meaning only for certain frame types.
void set_width (float x, float y)
 Sets the width parameter, which has meaning only for certain frame types.
bool xform (const LMatrix4f &mat)
 Applies the indicated transform to the FrameStyle.

Detailed Description

Definition at line 31 of file pgFrameStyle.h.


Member Function Documentation

void PGFrameStyle::clear_texture ( ) [inline]

Removes the texture from the frame.

Definition at line 159 of file pgFrameStyle.I.

NodePath PGFrameStyle::generate_into ( const NodePath parent,
const LVecBase4f frame,
int  sort = 0 
)

Generates geometry representing a frame of the indicated size, and parents it to the indicated node, with the indicated scene graph sort order.

The return value is the generated NodePath, if any, or an empty NodePath if nothing is generated.

Definition at line 163 of file pgFrameStyle.cxx.

References NodePath::attach_new_node().

const Colorf & PGFrameStyle::get_color ( ) const [inline]

Returns the dominant color of the frame.

Definition at line 116 of file pgFrameStyle.I.

LVecBase4f PGFrameStyle::get_internal_frame ( const LVecBase4f frame) const

Computes the size of the internal frame, given the indicated external frame, appropriate for this kind of frame style.

This simply subtracts the border width for those frame styles that include a border.

Definition at line 72 of file pgFrameStyle.cxx.

Referenced by PGScrollFrame::remanage().

Texture * PGFrameStyle::get_texture ( ) const [inline]

Returns the texture that has been applied to the frame, or NULL if no texture has been applied.

Definition at line 149 of file pgFrameStyle.I.

PGFrameStyle::Type PGFrameStyle::get_type ( ) const [inline]

Returns the basic type of frame.

Definition at line 86 of file pgFrameStyle.I.

const LVecBase2f & PGFrameStyle::get_uv_width ( ) const [inline]

See set_uv_width().

Definition at line 234 of file pgFrameStyle.I.

const LVecBase2f & PGFrameStyle::get_visible_scale ( ) const [inline]

Returns the scale factor on the visible representation of the frame, in the X and Y directions.

If this scale factor is other than 1, it will affect the size of the visible frame representation within the actual frame border.

Definition at line 276 of file pgFrameStyle.I.

const LVecBase2f & PGFrameStyle::get_width ( ) const [inline]

Returns the width parameter, which has meaning only for certain frame types.

For instance, this is the width of the bevel for T_bevel_in or T_bevel_out. The units are in screen units.

Definition at line 198 of file pgFrameStyle.I.

bool PGFrameStyle::has_texture ( ) const [inline]

Returns true if a texture has been applied to the frame.

Definition at line 138 of file pgFrameStyle.I.

void PGFrameStyle::set_color ( float  r,
float  g,
float  b,
float  a 
) [inline]
void PGFrameStyle::set_color ( const Colorf color) [inline]

Sets the dominant color of the frame.

Definition at line 106 of file pgFrameStyle.I.

void PGFrameStyle::set_texture ( Texture texture) [inline]

Specifies a texture that should be applied to the frame.

Definition at line 127 of file pgFrameStyle.I.

void PGFrameStyle::set_type ( PGFrameStyle::Type  type) [inline]
void PGFrameStyle::set_uv_width ( const LVecBase2f uv_width) [inline]

Sets the uv_width parameter, which indicates the amount of the texture that is consumed by the inner bevel--the width in texture space of the amount indicated by set_width.

Definition at line 224 of file pgFrameStyle.I.

void PGFrameStyle::set_uv_width ( float  u,
float  v 
) [inline]

Sets the uv_width parameter, which indicates the amount of the texture that is consumed by the inner bevel--the width in texture space of the amount indicated by set_width.

Definition at line 211 of file pgFrameStyle.I.

void PGFrameStyle::set_visible_scale ( float  x,
float  y 
) [inline]

Sets a scale factor on the visible representation of the frame, in the X and Y directions.

If this scale factor is other than 1, it will affect the size of the visible frame representation within the actual frame border.

Definition at line 248 of file pgFrameStyle.I.

Referenced by PGSliderBar::setup_slider().

void PGFrameStyle::set_visible_scale ( const LVecBase2f visible_scale) [inline]

Sets a scale factor on the visible representation of the frame, in the X and Y directions.

If this scale factor is other than 1, it will affect the size of the visible frame representation within the actual frame border.

Definition at line 262 of file pgFrameStyle.I.

void PGFrameStyle::set_width ( const LVecBase2f width) [inline]

Sets the width parameter, which has meaning only for certain frame types.

For instance, this is the width of the bevel for T_bevel_in or T_bevel_out. The units are in screen units.

Definition at line 185 of file pgFrameStyle.I.

void PGFrameStyle::set_width ( float  x,
float  y 
) [inline]

Sets the width parameter, which has meaning only for certain frame types.

For instance, this is the width of the bevel for T_bevel_in or T_bevel_out. The units are in screen units.

Definition at line 172 of file pgFrameStyle.I.

Referenced by PGWaitBar::setup(), PGVirtualFrame::setup(), PGScrollFrame::setup(), PGEntry::setup(), PGButton::setup(), PGSliderBar::setup_scroll_bar(), and PGSliderBar::setup_slider().

bool PGFrameStyle::xform ( const LMatrix4f mat)

Applies the indicated transform to the FrameStyle.

The return value is true if the frame style is transformed, or false if it was not affected by the transform.

Definition at line 121 of file pgFrameStyle.cxx.

References LMatrix4f::get_row3(), and LVecBase3f::length().


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations