Panda3D
Public Member Functions | List of all members
ConfigVariableColor Class Reference

This is a convenience class to specialize ConfigVariable as a set of floating-point types representing a color value. More...

#include "configVariableColor.h"

Inheritance diagram for ConfigVariableColor:
ConfigVariable ConfigVariableBase ConfigFlags

Public Member Functions

 ConfigVariableColor (const string &name)
 
 ConfigVariableColor (const string &name, const LColor &default_value, const string &description=string(), int flags=0)
 
 ConfigVariableColor (const string &name, const string &default_value, const string &description=string(), int flags=0)
 
LColor get_default_value () const
 Returns the variable's default value. More...
 
const LColorget_value () const
 Returns the variable's value. More...
 
 operator const LColor & () const
 Returns the variable's value. More...
 
void operator= (const LColor &value)
 Reassigns the variable's local value. More...
 
PN_stdfloat operator[] (int n) const
 Returns the value of the color's nth component (which is not necessarily the same thing as the variable's nth word). More...
 
void set_value (const LColor &value)
 Reassigns the variable's local value. More...
 
- Public Member Functions inherited from ConfigVariable
 ConfigVariable (const string &name)
 Use this constructor to make a ConfigVariable of an unspecified type. More...
 
void clear_value ()
 Removes the value assigned to this variable, and lets its original value (as read from the prc files) show through. More...
 
bool get_bool_word (int n) const
 Returns the boolean value of the nth word of the variable's value, or false if there is no nth value. More...
 
const ConfigDeclarationget_default_value () const
 Returns the default variable specified for this variable. More...
 
double get_double_word (int n) const
 Returns the integer value of the nth word of the variable's value, or 0 if there is no nth value. More...
 
PN_int64 get_int64_word (int n) const
 Returns the int64 value of the nth word of the variable's value, or 0 if there is no nth value. More...
 
int get_int_word (int n) const
 Returns the integer value of the nth word of the variable's value, or 0 if there is no nth value. More...
 
int get_num_words () const
 Returns the number of words in the variable's value. More...
 
const string & get_string_value () const
 Returns the toplevel value of the variable, formatted as a string. More...
 
string get_string_word (int n) const
 Returns the string value of the nth word of the variable's value, or empty string if there is no nth value. More...
 
bool has_bool_word (int n) const
 Returns true if the variable's value has a valid boolean value for the nth word. More...
 
bool has_double_word (int n) const
 Returns true if the variable's value has a valid integer value for the nth word. More...
 
bool has_int64_word (int n) const
 Returns true if the variable's value has a valid 64-bit integer value for the nth word. More...
 
bool has_int_word (int n) const
 Returns true if the variable's value has a valid integer value for the nth word. More...
 
bool has_string_word (int n) const
 Returns true if the variable's value has a valid string value for the nth word. More...
 
void set_bool_word (int n, bool value)
 Changes the nth word to the indicated value without affecting the other words. More...
 
void set_double_word (int n, double value)
 Changes the nth word to the indicated value without affecting the other words. More...
 
void set_int64_word (int n, PN_int64 value)
 Changes the nth word to the indicated value without affecting the other words. More...
 
void set_int_word (int n, int value)
 Changes the nth word to the indicated value without affecting the other words. More...
 
void set_string_value (const string &value)
 Changes the value assigned to this variable. More...
 
void set_string_word (int n, const string &value)
 Changes the nth word to the indicated value without affecting the other words. More...
 
- Public Member Functions inherited from ConfigVariableBase
bool clear_local_value ()
 Removes the local value defined for this variable, and allows its value to be once again retrieved from the .prc files. More...
 
const string & get_description () const
 Returns the brief description of this variable, if it has been defined. More...
 
int get_flags () const
 Returns the flags value as set by set_flags(). More...
 
const string & get_name () const
 Returns the name of the variable. More...
 
int get_trust_level () const
 Returns the minimum trust_level a prc file must demonstrate in order to redefine the value for this variable. More...
 
ValueType get_value_type () const
 Returns the stated type of this variable. More...
 
bool has_local_value () const
 Returns true if this variable's value has been shadowed by a local assignment (as created via make_local_value()), or false otherwise. More...
 
bool has_value () const
 Returns true if this variable has an explicit value, either from a prc file or locally set, or false if variable has its default value. More...
 
bool is_closed () const
 Returns true if the variable is not trusted by any prc file (and hence cannot be modified from its compiled-in default value), or false for the normal case, in which the variable can be modified by any prc file at or above its trust level (see get_trust_level()). More...
 
bool is_dynamic () const
 Returns true if the variable was indicated as "dynamic" by its constructor, indicating that its name was dynamically generated, possibly from a large pool, and it should not be listed along with the other variables. More...
 
void output (ostream &out) const
 
void write (ostream &out) const
 

Additional Inherited Members

- Public Types inherited from ConfigFlags
enum  ValueType {
  VT_undefined, VT_list, VT_string, VT_filename,
  VT_bool, VT_int, VT_double, VT_enum,
  VT_search_path, VT_int64, VT_color
}
 
enum  VariableFlags {
  F_trust_level_mask = 0x00000fff, F_open = 0x00001000, F_closed = 0x00002000, F_dynamic = 0x00004000,
  F_dconfig = 0x00008000
}
 

Detailed Description

This is a convenience class to specialize ConfigVariable as a set of floating-point types representing a color value.

It interprets the color differently depending on how many words were specified: if only one, it is interpreted as a shade of gray with alpha 1. If two values were specified, a grayscale and alpha pair. If three, a set of R, G, B values with alpha 1, and if four, a complete RGBA color.

This isn't defined in dtool because it relies on the LColor class, which is defined in linmath.

Definition at line 40 of file configVariableColor.h.

Member Function Documentation

◆ get_default_value()

LColor ConfigVariableColor::get_default_value ( ) const
inline

◆ get_value()

const LColor & ConfigVariableColor::get_value ( ) const
inline

◆ operator const LColor &()

ConfigVariableColor::operator const LColor & ( ) const
inline

Returns the variable's value.

Definition at line 86 of file configVariableColor.I.

References get_value(), and operator[]().

◆ operator=()

void ConfigVariableColor::operator= ( const LColor value)
inline

Reassigns the variable's local value.

Definition at line 76 of file configVariableColor.I.

References set_value().

◆ operator[]()

PN_stdfloat ConfigVariableColor::operator[] ( int  n) const
inline

Returns the value of the color's nth component (which is not necessarily the same thing as the variable's nth word).

Definition at line 98 of file configVariableColor.I.

References get_value(), and set_value().

Referenced by operator const LColor &().

◆ set_value()

void ConfigVariableColor::set_value ( const LColor value)
inline

Reassigns the variable's local value.

Definition at line 108 of file configVariableColor.I.

References get_value(), ConfigVariable::set_double_word(), and ConfigVariable::set_string_value().

Referenced by operator=(), and operator[]().


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