// Created: 2007-04-14
// RCS-ID: $Id$
// Copyright: (c) Jaakko Salli
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// For compilers that support precompilation, includes "wx/wx.h".
// Number added to image width for SetCustomPaintWidth
#define ODCB_CUST_PAINT_MARGIN 6
-// Milliseconds to wait for two mouse-ups after focus inorder
+// Milliseconds to wait for two mouse-ups after focus in order
// to trigger a double-click.
#define DOUBLE_CLICK_CONVERSION_TRESHOLD 500
wxTextCtrl* tc = wxStaticCast(ctrl, wxTextCtrl);
wxString textVal = tc->GetValue();
- if ( property->UsesAutoUnspecified() && !textVal.length() )
+ if ( property->UsesAutoUnspecified() && textVal.empty() )
{
variant.MakeNull();
return true;
{
// Make sure there is correct text (instead of unspecified value
// indicator or hint text)
- int flags = property->HasFlag(wxPG_PROP_READONLY) ?
+ int flags = property->HasFlag(wxPG_PROP_READONLY) ?
0 : wxPG_EDITABLE_VALUE;
wxString correctText = property->GetValueAsString(flags);
tc->SetSelection(-1,-1);
}
-
+
void wxPGTextCtrlEditor::OnFocus( wxPGProperty* property,
wxWindow* wnd ) const
{
wxPGTextCtrlEditor_OnFocus(property, tc);
}
-wxPGTextCtrlEditor::~wxPGTextCtrlEditor() { }
+wxPGTextCtrlEditor::~wxPGTextCtrlEditor()
+{
+ // Reset the global pointer. Useful when wxPropertyGrid is accessed
+ // from an external main loop.
+ wxPG_EDITOR(TextCtrl) = NULL;
+}
// -----------------------------------------------------------------------
if ( index >= 0 && index < (int)cb->GetCount() )
{
cb->SetSelection( index );
- if ( defString.length() )
+ if ( !defString.empty() )
cb->SetText( defString );
}
- else if ( !(extraStyle & wxCB_READONLY) && defString.length() )
+ else if ( !(extraStyle & wxCB_READONLY) && !defString.empty() )
{
propGrid->SetupTextCtrlValue(defString);
cb->SetValue( defString );
}
-wxPGChoiceEditor::~wxPGChoiceEditor() { }
+wxPGChoiceEditor::~wxPGChoiceEditor()
+{
+ wxPG_EDITOR(Choice) = NULL;
+}
// -----------------------------------------------------------------------
wxOwnerDrawnComboBox* cb = (wxOwnerDrawnComboBox*)ctrl;
wxString textVal = cb->GetValue();
- if ( property->UsesAutoUnspecified() && !textVal.length() )
+ if ( property->UsesAutoUnspecified() && textVal.empty() )
{
variant.MakeNull();
return true;
}
-wxPGComboBoxEditor::~wxPGComboBoxEditor() { }
+wxPGComboBoxEditor::~wxPGComboBoxEditor()
+{
+ wxPG_EDITOR(ComboBox) = NULL;
+}
+
// -----------------------------------------------------------------------
}
-wxPGChoiceAndButtonEditor::~wxPGChoiceAndButtonEditor() { }
-
+wxPGChoiceAndButtonEditor::~wxPGChoiceAndButtonEditor()
+{
+ wxPG_EDITOR(ChoiceAndButton) = NULL;
+}
// -----------------------------------------------------------------------
// wxPGTextCtrlAndButtonEditor
}
-wxPGTextCtrlAndButtonEditor::~wxPGTextCtrlAndButtonEditor() { }
-
+wxPGTextCtrlAndButtonEditor::~wxPGTextCtrlAndButtonEditor()
+{
+ wxPG_EDITOR(TextCtrlAndButton) = NULL;
+}
// -----------------------------------------------------------------------
// wxPGCheckBoxEditor
}
-wxPGCheckBoxEditor::~wxPGCheckBoxEditor() { }
-
+wxPGCheckBoxEditor::~wxPGCheckBoxEditor()
+{
+ wxPG_EDITOR(CheckBox) = NULL;
+}
#endif // wxPG_INCLUDE_CHECKBOX
m_labelEditor->Move(pos.x, r.y + offset);
}
- if ( m_wndEditor || m_wndEditor2 )
+ if ( m_wndEditor || m_wndEditor2 )
{
wxRect r = GetEditorWidgetRect(selected, 1);
Move( pos.x + m_fullEditorSize.x - m_buttonsWidth, pos.y );
}
-int wxPGMultiButton::GenId( int id ) const
+int wxPGMultiButton::GenId( int itemid ) const
{
- if ( id < -1 )
+ if ( itemid < -1 )
{
if ( m_buttons.size() )
- id = GetButton(m_buttons.size()-1)->GetId() + 1;
+ itemid = GetButton(m_buttons.size()-1)->GetId() + 1;
else
- id = wxPG_SUBID2;
+ itemid = wxPG_SUBID2;
}
- return id;
+ return itemid;
}
#if wxUSE_BMPBUTTON
-void wxPGMultiButton::Add( const wxBitmap& bitmap, int id )
+void wxPGMultiButton::Add( const wxBitmap& bitmap, int itemid )
{
- id = GenId(id);
+ itemid = GenId(itemid);
wxSize sz = GetSize();
- wxButton* button = new wxBitmapButton( this, id, bitmap,
+ wxButton* button = new wxBitmapButton( this, itemid, bitmap,
wxPoint(sz.x, 0),
wxSize(sz.y, sz.y) );
DoAddButton( button, sz );
}
#endif
-void wxPGMultiButton::Add( const wxString& label, int id )
+void wxPGMultiButton::Add( const wxString& label, int itemid )
{
- id = GenId(id);
+ itemid = GenId(itemid);
wxSize sz = GetSize();
- wxButton* button = new wxButton( this, id, label, wxPoint(sz.x, 0),
+ wxButton* button = new wxButton( this, itemid, label, wxPoint(sz.x, 0),
wxSize(sz.y, sz.y) );
DoAddButton( button, sz );
}