KiCad PCB EDA Suite
property.h File Reference
#include <core/wx_stl_compat.h>
#include <origin_transforms.h>
#include <wx/any.h>
#include <wx/string.h>
#include <wx/bitmap.h>
#include <wx/font.h>
#include <wx/validate.h>
#include <wx/propgrid/property.h>
#include <functional>
#include <map>
#include <memory>
#include <typeindex>
#include <type_traits>

Go to the source code of this file.

Classes

class  GETTER_BASE< Owner, T >
 
class  GETTER< Owner, T, FuncType >
 
class  SETTER_BASE< Owner, T >
 
class  SETTER< Owner, T, FuncType >
 
class  METHOD< Owner, T, Base >
 
class  PROPERTY_BASE
 
class  PROPERTY< Owner, T, Base >
 
class  PROPERTY_ENUM< Owner, T, Base >
 
class  TYPE_CAST_BASE
 
class  TYPE_CAST< Base, Derived >
 
class  ENUM_MAP< T >
 

Macros

#define TYPE_HASH(x)   typeid( x ).hash_code()
 
#define TYPE_NAME(x)   typeid( x ).name()
 
#define DECLARE_ENUM_TO_WXANY(type)
 
#define IMPLEMENT_ENUM_TO_WXANY(type)   WX_IMPLEMENT_ANY_VALUE_TYPE( wxAnyValueTypeImpl<type> )
 
#define ENUM_TO_WXANY(type)
 Macro to define read-only fields (no setter method available) More...
 
#define NO_SETTER(owner, type)   ( ( void ( owner::* )( type ) ) nullptr )
 

Enumerations

enum  PROPERTY_DISPLAY {
  PT_DEFAULT , PT_SIZE , PT_COORD , PT_DEGREE ,
  PT_DECIDEGREE
}
 Common property types. More...
 

Macro Definition Documentation

◆ DECLARE_ENUM_TO_WXANY

#define DECLARE_ENUM_TO_WXANY (   type)

Definition at line 612 of file property.h.

◆ ENUM_TO_WXANY

#define ENUM_TO_WXANY (   type)
Value:
IMPLEMENT_ENUM_TO_WXANY( type )
#define DECLARE_ENUM_TO_WXANY(type)
Definition: property.h:612

Macro to define read-only fields (no setter method available)

Definition at line 656 of file property.h.

◆ IMPLEMENT_ENUM_TO_WXANY

#define IMPLEMENT_ENUM_TO_WXANY (   type)    WX_IMPLEMENT_ANY_VALUE_TYPE( wxAnyValueTypeImpl<type> )

Definition at line 646 of file property.h.

◆ NO_SETTER

#define NO_SETTER (   owner,
  type 
)    ( ( void ( owner::* )( type ) ) nullptr )

Definition at line 657 of file property.h.

◆ TYPE_HASH

#define TYPE_HASH (   x)    typeid( x ).hash_code()

Definition at line 61 of file property.h.

◆ TYPE_NAME

#define TYPE_NAME (   x)    typeid( x ).name()

Definition at line 62 of file property.h.

Enumeration Type Documentation

◆ PROPERTY_DISPLAY

Common property types.

Enumerator
PT_DEFAULT 

Default property for a given type.

PT_SIZE 

Size expressed in distance units (mm/inch)

PT_COORD 

Coordinate expressed in distance units (mm/inch)

PT_DEGREE 

Angle expressed in degrees.

PT_DECIDEGREE 

Angle expressed in decidegrees.

Definition at line 51 of file property.h.

52{
54 PT_SIZE,
55 PT_COORD,
56 PT_DEGREE,
58};
@ PT_DEGREE
Angle expressed in degrees.
Definition: property.h:56
@ PT_COORD
Coordinate expressed in distance units (mm/inch)
Definition: property.h:55
@ PT_DECIDEGREE
Angle expressed in decidegrees.
Definition: property.h:57
@ PT_DEFAULT
Default property for a given type.
Definition: property.h:53
@ PT_SIZE
Size expressed in distance units (mm/inch)
Definition: property.h:54