#ifndef WXSSTRINGPROPERTY_H
#define WXSSTRINGPROPERTY_H
#include "../wxsproperties.h"
class wxsStringPropertyWindow;
class wxsStringProperty : public wxsProperty
{
public:
/** Ctor
*
* \param String - variable which will be monitored
* \param AlwaysUpdate - if true, any change (includig key events) will be
* reported, if false, update will be made only after enter
* or after loosing focus
*/
wxsStringProperty(wxsProperties* Properties,wxString& String, bool AlwaysUpdate,bool Long=false);
/** Dctor */
virtual ~wxsStringProperty();
/** Taking name of value type handled by this item */
virtual const wxString& GetTypeName();
protected:
virtual wxString CorrectValue(const wxString& Value) { return Value; }
#ifdef __NO_PROPGRGID
virtual wxWindow* BuildEditWindow(wxWindow* Parent);
virtual void UpdateEditWindow();
#else
virtual void AddToPropGrid(wxPropertyGrid* Grid,const wxString& Name);
virtual bool PropGridChanged(wxPropertyGrid* Grid,wxPGId Id);
virtual void UpdatePropGrid(wxPropertyGrid* Grid);
#endif
private:
wxString& Value;
bool AlwUpd;
bool IsLong;
#ifdef __NO_PROPGRGID
wxsStringPropertyWindow* Window;
friend class wxsStringPropertyWindow;
#else
wxPGId PGId;
#endif
};
#endif // WXSSTRINGPROPERTY_H
syntax highlighted by Code2HTML, v. 0.9.1