Public Member Functions | |
NamedStyle (const char *name, void(*revert)(Style *), NamedStyle **backptr) | |
Public Attributes | |
const char * | name |
void(* | revertfunc )(Style *) |
NamedStyle ** | back_pointer |
NamedStyle * | next |
Static Public Attributes | |
NamedStyle * | first |
The reason a string name is used, rather than making the style be a public static data member of the class, is so that a theme can modify a large number of types of widgets without having them all linked into a program. If find() returns null it should just skip that setting code because that widget is not used by this program.
The "revert" function is mostly provided to make it easy to initialize the fields even though C++ does not allow a structure constant. It is also used to undo theme changes when reset_theme() is called.