KiCad PCB EDA Suite
Loading...
Searching...
No Matches
property.h File Reference
#include <core/wx_stl_compat.h>
#include <origin_transforms.h>
#include <properties/color4d_variant.h>
#include <properties/eda_angle_variant.h>
#include <properties/property_validator.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 <unordered_map>
#include <memory>
#include <typeindex>
#include <type_traits>
#include "std_optional_variants.h"

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)
 
#define NO_SETTER(owner, type)   ( ( void ( owner::* )( type ) ) nullptr )
 

Enumerations

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

Macro Definition Documentation

◆ DECLARE_ENUM_TO_WXANY

#define DECLARE_ENUM_TO_WXANY (   type)

Definition at line 729 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:729

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

Definition at line 773 of file property.h.

◆ IMPLEMENT_ENUM_TO_WXANY

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

Definition at line 763 of file property.h.

◆ NO_SETTER

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

Definition at line 774 of file property.h.

◆ TYPE_HASH

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

Definition at line 71 of file property.h.

◆ TYPE_NAME

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

Definition at line 72 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_AREA 

Area expressed in distance units-squared (mm/inch)

PT_COORD 

Coordinate expressed in distance units (mm/inch)

PT_DEGREE 

Angle expressed in degrees.

PT_DECIDEGREE 

Angle expressed in decidegrees.

PT_RATIO 

Definition at line 59 of file property.h.