mtollari 4db94043cb Patch level : 12.0 no-patch
Files correlati     : 
Commento            : Spostamento in libraries delle librerie esterne di Campo per una maggiore pulizia e organizzazione

git-svn-id: svn://10.65.10.50/branches/R_10_00@24150 c028cbd2-c16b-5b4b-a496-9718f37d4682
2017-10-26 09:11:15 +00:00

143 lines
4.2 KiB
C++

/////////////////////////////////////////////////////////////////////////////
// Name: sampleprops.h
// Purpose: wxPropertyGrid Sample Properties Header
// Author: Jaakko Salli
// Modified by:
// Created: Mar-05-2006
// RCS-ID: $Id:
// Copyright: (c) Jaakko Salli
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef WX_PROPGRID_SAMPLEPROPS_H
#define WX_PROPGRID_SAMPLEPROPS_H
#ifndef __WXPYTHON__
// This decl is what you would use in a normal app
#define wxPG_EXTRAS_DECL
#else
#define wxPG_EXTRAS_DECL WXDLLIMPEXP_PG
#endif
//
// Additional properties that can be useful as more than just a demonstration.
//
#ifndef SWIG
WX_PG_DECLARE_WXOBJECT_VARIANT_DATA(wxPGVariantDataFontData, wxFontData, wxPG_EXTRAS_DECL)
#endif
class wxPG_EXTRAS_DECL wxFontDataProperty : public wxFontProperty
{
WX_PG_DECLARE_PROPERTY_CLASS(wxFontDataProperty)
public:
wxFontDataProperty( const wxString& label = wxPG_LABEL,
const wxString& name = wxPG_LABEL,
const wxFontData& value = wxFontData() );
virtual ~wxFontDataProperty ();
void OnSetValue();
// Inorder to have different value type in a derived property
// class, we will override GetValue to return custom variant,
// instead of changing the base m_value. This allows the methods
// in base class to function properly.
virtual wxVariant DoGetValue() const;
WX_PG_DECLARE_PARENTAL_METHODS()
WX_PG_DECLARE_EVENT_METHODS()
protected:
// Value must be stored as variant - otherwise it will be
// decreffed to oblivion on GetValue().
wxVariant m_value_wxFontData;
};
// -----------------------------------------------------------------------
class wxPG_EXTRAS_DECL wxSizeProperty : public wxPGProperty
{
WX_PG_DECLARE_PROPERTY_CLASS(wxSizeProperty)
public:
wxSizeProperty( const wxString& label = wxPG_LABEL, const wxString& name = wxPG_LABEL,
const wxSize& value = wxSize() );
virtual ~wxSizeProperty();
WX_PG_DECLARE_PARENTAL_METHODS()
protected:
// I stands for internal
void SetValueI( const wxSize& value )
{
m_value = wxSizeToVariant(value);
}
};
// -----------------------------------------------------------------------
class wxPG_EXTRAS_DECL wxPointProperty : public wxPGProperty
{
WX_PG_DECLARE_PROPERTY_CLASS(wxPointProperty)
public:
wxPointProperty( const wxString& label = wxPG_LABEL, const wxString& name = wxPG_LABEL,
const wxPoint& value = wxPoint() );
virtual ~wxPointProperty();
WX_PG_DECLARE_PARENTAL_METHODS()
protected:
// I stands for internal
void SetValueI( const wxPoint& value )
{
m_value = wxPointToVariant(value);
}
};
// -----------------------------------------------------------------------
WX_PG_DECLARE_ARRAYSTRING_PROPERTY_WITH_VALIDATOR_WITH_DECL(wxDirsProperty, class wxPG_EXTRAS_DECL)
// -----------------------------------------------------------------------
#ifndef SWIG
WX_PG_DECLARE_VARIANT_DATA(wxPGVariantDataArrayDouble, wxArrayDouble, wxPG_EXTRAS_DECL)
#endif
class wxPG_EXTRAS_DECL wxArrayDoubleProperty : public wxPGProperty
{
WX_PG_DECLARE_PROPERTY_CLASS(wxArrayDoubleProperty)
public:
wxArrayDoubleProperty( const wxString& label = wxPG_LABEL,
const wxString& name = wxPG_LABEL,
const wxArrayDouble& value = wxArrayDouble() );
virtual ~wxArrayDoubleProperty ();
virtual void OnSetValue();
WX_PG_DECLARE_BASIC_TYPE_METHODS()
WX_PG_DECLARE_EVENT_METHODS()
WX_PG_DECLARE_ATTRIBUTE_METHODS()
// Generates cache for displayed text
virtual void GenerateValueAsString ( wxString& target, int prec, bool removeZeroes ) const;
protected:
wxString m_display; // Stores cache for displayed text
int m_precision; // Used when formatting displayed string.
wxChar m_delimiter; // Delimiter between array entries.
};
// -----------------------------------------------------------------------
#endif // WX_PROPGRID_SAMPLEPROPS_H