Panda3D
Public Types | Public Member Functions | List of all members
PGFrameStyle Class Reference

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. More...
 
NodePath generate_into (const NodePath &parent, const LVecBase4 &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. More...
 
LColor get_color () const
 Returns the dominant color of the frame. More...
 
LVecBase4 get_internal_frame (const LVecBase4 &frame) const
 Computes the size of the internal frame, given the indicated external frame, appropriate for this kind of frame style. More...
 
Textureget_texture () const
 Returns the texture that has been applied to the frame, or NULL if no texture has been applied. More...
 
Type get_type () const
 Returns the basic type of frame. More...
 
const LVecBase2 & get_uv_width () const
 See set_uv_width(). More...
 
const LVecBase2 & get_visible_scale () const
 Returns the scale factor on the visible representation of the frame, in the X and Y directions. More...
 
const LVecBase2 & get_width () const
 Returns the width parameter, which has meaning only for certain frame types. More...
 
bool has_texture () const
 Returns true if a texture has been applied to the frame. More...
 
void operator= (const PGFrameStyle &copy)
 
void output (std::ostream &out) const
 
void set_color (PN_stdfloat r, PN_stdfloat g, PN_stdfloat b, PN_stdfloat a)
 Sets the dominant color of the frame. More...
 
void set_color (const LColor &color)
 Sets the dominant color of the frame. More...
 
void set_texture (Texture *texture)
 Specifies a texture that should be applied to the frame. More...
 
void set_type (Type type)
 Sets the basic type of frame. More...
 
void set_uv_width (PN_stdfloat u, PN_stdfloat 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. More...
 
void set_uv_width (const LVecBase2 &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. More...
 
void set_visible_scale (PN_stdfloat x, PN_stdfloat y)
 Sets a scale factor on the visible representation of the frame, in the X and Y directions. More...
 
void set_visible_scale (const LVecBase2 &visible_scale)
 Sets a scale factor on the visible representation of the frame, in the X and Y directions. More...
 
void set_width (PN_stdfloat x, PN_stdfloat y)
 Sets the width parameter, which has meaning only for certain frame types. More...
 
void set_width (const LVecBase2 &width)
 Sets the width parameter, which has meaning only for certain frame types. More...
 
bool xform (const LMatrix4 &mat)
 Applies the indicated transform to the FrameStyle. More...
 

Detailed Description

Definition at line 29 of file pgFrameStyle.h.

Member Function Documentation

◆ clear_texture()

void PGFrameStyle::clear_texture ( )
inline

Removes the texture from the frame.

Definition at line 129 of file pgFrameStyle.I.

◆ generate_into()

NodePath PGFrameStyle::generate_into ( const NodePath parent,
const LVecBase4 &  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 153 of file pgFrameStyle.cxx.

References NodePath::attach_new_node().

◆ get_color()

LColor PGFrameStyle::get_color ( ) const
inline

Returns the dominant color of the frame.

Definition at line 96 of file pgFrameStyle.I.

◆ get_internal_frame()

LVecBase4 PGFrameStyle::get_internal_frame ( const LVecBase4 &  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 70 of file pgFrameStyle.cxx.

Referenced by PGScrollFrame::remanage().

◆ get_texture()

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 121 of file pgFrameStyle.I.

◆ get_type()

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

Returns the basic type of frame.

Definition at line 72 of file pgFrameStyle.I.

◆ get_uv_width()

const LVecBase2 & PGFrameStyle::get_uv_width ( ) const
inline

See set_uv_width().

Definition at line 187 of file pgFrameStyle.I.

◆ get_visible_scale()

const LVecBase2 & 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 218 of file pgFrameStyle.I.

◆ get_width()

const LVecBase2 & 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 159 of file pgFrameStyle.I.

◆ has_texture()

bool PGFrameStyle::has_texture ( ) const
inline

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

Definition at line 112 of file pgFrameStyle.I.

◆ set_color() [1/2]

void PGFrameStyle::set_color ( PN_stdfloat  r,
PN_stdfloat  g,
PN_stdfloat  b,
PN_stdfloat  a 
)
inline

◆ set_color() [2/2]

void PGFrameStyle::set_color ( const LColor &  color)
inline

Sets the dominant color of the frame.

Definition at line 88 of file pgFrameStyle.I.

◆ set_texture()

void PGFrameStyle::set_texture ( Texture texture)
inline

Specifies a texture that should be applied to the frame.

Definition at line 104 of file pgFrameStyle.I.

◆ set_type()

void PGFrameStyle::set_type ( PGFrameStyle::Type  type)
inline

◆ set_uv_width() [1/2]

void PGFrameStyle::set_uv_width ( PN_stdfloat  u,
PN_stdfloat  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 169 of file pgFrameStyle.I.

◆ set_uv_width() [2/2]

void PGFrameStyle::set_uv_width ( const LVecBase2 &  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 179 of file pgFrameStyle.I.

◆ set_visible_scale() [1/2]

void PGFrameStyle::set_visible_scale ( PN_stdfloat  x,
PN_stdfloat  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 197 of file pgFrameStyle.I.

Referenced by PGSliderBar::setup_slider().

◆ set_visible_scale() [2/2]

void PGFrameStyle::set_visible_scale ( const LVecBase2 &  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 207 of file pgFrameStyle.I.

◆ set_width() [1/2]

void PGFrameStyle::set_width ( PN_stdfloat  x,
PN_stdfloat  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 139 of file pgFrameStyle.I.

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

◆ set_width() [2/2]

void PGFrameStyle::set_width ( const LVecBase2 &  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 149 of file pgFrameStyle.I.

◆ xform()

bool PGFrameStyle::xform ( const LMatrix4 &  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 114 of file pgFrameStyle.cxx.


The documentation for this class was generated from the following files: