wxImageFileProperty Class Reference

#include <advprops.h>

Inheritance diagram for wxImageFileProperty:

wxFileProperty wxPGProperty

List of all members.


Detailed Description

Property representing image file(name).

Public Member Functions

virtual void OnCustomPaint (wxDC &dc, const wxRect &rect, wxPGPaintData &paintdata)
virtual wxSize OnMeasureImage (int item) const
virtual void OnSetValue ()
 wxImageFileProperty (const wxString &label=wxPG_LABEL, const wxString &name=wxPG_LABEL, const wxString &value=wxEmptyString)

Protected Attributes

wxBitmap * m_pBitmap
wxImage * m_pImage

Member Function Documentation

virtual void wxImageFileProperty::OnCustomPaint ( wxDC &  dc,
const wxRect &  rect,
wxPGPaintData paintdata 
) [virtual]

Override to paint an image in front of the property value text or drop-down list item (but only if wxPGProperty::OnMeasureImage is overridden as well).

If property's OnMeasureImage() returns size that has height != 0 but less than row height ( < 0 has special meanings), wxPropertyGrid calls this method to draw a custom image in a limited area in front of the editor control or value text/graphics, and if control has drop-down list, then the image is drawn there as well (even in the case OnMeasureImage() returned higher height than row height).

NOTE: Following applies when OnMeasureImage() returns a "flexible" height ( using wxPG_FLEXIBLE_SIZE(W,H) macro), which implies variable height items: If rect.x is < 0, then this is a measure item call, which means that dc is invalid and only thing that should be done is to set paintdata.m_drawnHeight to the height of the image of item at index paintdata.m_choiceItem. This call may be done even as often as once every drop-down popup show.

Parameters:
dc wxDC to paint on.
rect Box reserved for custom graphics. Includes surrounding rectangle, if any. If x is < 0, then this is a measure item call (see above).
paintdata wxPGPaintData structure with much useful data.
Remarks:
  • You can actually exceed rect width, but if you do so then paintdata.m_drawnWidth must be set to the full width drawn in pixels.
  • Due to technical reasons, rect's height will be default even if custom height was reported during measure call.
  • Brush is guaranteed to be default background colour. It has been already used to clear the background of area being painted. It can be modified.
  • Pen is guaranteed to be 1-wide 'black' (or whatever is the proper colour) pen for drawing framing rectangle. It can be changed as well.
See also:
GetValueAsString

Reimplemented from wxPGProperty.

virtual wxSize wxImageFileProperty::OnMeasureImage ( int  item  )  const [virtual]

Returns size of the custom painted image in front of property.

This method must be overridden to return non-default value if OnCustomPaint is to be called.

Parameters:
item Normally -1, but can be an index to the property's list of items.
Remarks:
  • Default behavior is to return wxSize(0,0), which means no image.
  • Default image width or height is indicated with dimension -1.
  • You can also return wxPG_DEFAULT_IMAGE_SIZE which equals wxSize(-1, -1).

Reimplemented from wxPGProperty.

virtual void wxImageFileProperty::OnSetValue (  )  [virtual]

This virtual function is called after m_value has been set.

Remarks:
  • If m_value was set to Null variant (ie. unspecified value), OnSetValue() will not be called.
  • m_value may be of any variant type. Typically properties internally support only one variant type, and as such OnSetValue() provides a good opportunity to convert supported values into internal type.
  • Default implementation does nothing.

Reimplemented from wxFileProperty.


The documentation for this class was generated from the following file:

Generated on Sun Nov 2 12:30:01 2008 for wxPropertyGrid by  doxygen 1.5.5