]> git.saurik.com Git - wxWidgets.git/blobdiff - src/propgrid/editors.cpp
CanPaste() should be const too
[wxWidgets.git] / src / propgrid / editors.cpp
index 1eddd98fb4e38e87d6a4f4394b8291acd4127c3f..fb60bdaa5f65c85cfc0feebf78f868ff346554dc 100644 (file)
@@ -68,7 +68,7 @@
 
 // How many pixels between textctrl and button
 #ifdef __WXMAC__
-    #define wxPG_TEXTCTRL_AND_BUTTON_SPACING        8
+    #define wxPG_TEXTCTRL_AND_BUTTON_SPACING        4
 #else
     #define wxPG_TEXTCTRL_AND_BUTTON_SPACING        2
 #endif 
     #define wxPG_NAT_BUTTON_BORDER_X        0
     #define wxPG_NAT_BUTTON_BORDER_Y        0
 
-    #define wxPG_TEXTCTRLYADJUST            3
+    #define wxPG_TEXTCTRLYADJUST            0
 
 #else
     // defaults
 #endif
 
 // for odcombo
+#ifdef __WXMAC__
+#define wxPG_CHOICEXADJUST           -3 // required because wxComboCtrl reserves 3pixels for wxTextCtrl's focus ring
+#define wxPG_CHOICEYADJUST           -3 
+#else
 #define wxPG_CHOICEXADJUST           0
 #define wxPG_CHOICEYADJUST           0
+#endif
 
 #define ODCB_CUST_PAINT_MARGIN               6  // Number added to image width for SetCustomPaintWidth
 
@@ -231,7 +236,8 @@ wxPGWindowList wxPGTextCtrlEditor::CreateControls( wxPropertyGrid* propGrid,
         return (wxWindow*) NULL;
 
     if ( !property->IsValueUnspecified() )
-        text = property->GetValueString(property->HasFlag(wxPG_PROP_READONLY)?0:wxPG_EDITABLE_VALUE);
+        text = property->GetValueAsString(property->HasFlag(wxPG_PROP_READONLY) ?
+                                            0 : wxPG_EDITABLE_VALUE);
 
     int flags = 0;
     if ( (property->GetFlags() & wxPG_PROP_PASSWORD) &&
@@ -615,7 +621,7 @@ void wxPropertyGrid::OnComboItemPaint( wxPGCustomComboControl* pCc,
         else
         {
             if ( !p->IsValueUnspecified() )
-                text = p->GetValueString(0);
+                text = p->GetValueAsString(0);
         }
     }
 
@@ -674,7 +680,7 @@ void wxPropertyGrid::OnComboItemPaint( wxPGCustomComboControl* pCc,
         wxPoint pt(rect.x + wxPG_CONTROL_MARGIN - wxPG_CHOICEXADJUST - 1,
                    rect.y + 1);
 
-        int renderFlags = 0;
+        int renderFlags = wxPGCellRenderer::DontUseCellColours;
 
         if ( flags & wxODCB_PAINTING_CONTROL )
             renderFlags |= wxPGCellRenderer::Control;
@@ -866,11 +872,11 @@ wxWindow* wxPGChoiceEditor::CreateControlsBase( wxPropertyGrid* propGrid,
     // Connect event handling
     wxWindowID id = cb->GetId();
     propGrid->Connect(id, wxEVT_COMMAND_COMBOBOX_SELECTED,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
     propGrid->Connect(id, wxEVT_COMMAND_TEXT_UPDATED,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
     propGrid->Connect(id, wxEVT_COMMAND_TEXT_ENTER,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
 
 #ifdef __WXMSW__
     cb->Show();
@@ -1015,7 +1021,7 @@ WX_PG_IMPLEMENT_INTERNAL_EDITOR_CLASS(ComboBox,
 void wxPGComboBoxEditor::UpdateControl( wxPGProperty* property, wxWindow* ctrl ) const
 {
     wxOwnerDrawnComboBox* cb = (wxOwnerDrawnComboBox*)ctrl;
-    cb->SetValue(property->GetValueString(wxPG_EDITABLE_VALUE));
+    cb->SetValue(property->GetValueAsString(wxPG_EDITABLE_VALUE));
 
     // TODO: If string matches any selection, then select that.
 }
@@ -1652,7 +1658,7 @@ wxWindow* wxPropertyGrid::GenerateEditorTextCtrl( const wxPoint& pos,
 
    // Need to reduce width of text control on Mac
 #if defined(__WXMAC__)
-   s.x -= 8;
+    s.x -= 8;
 #endif
 
      // Take button into acccount
@@ -1680,7 +1686,7 @@ wxWindow* wxPropertyGrid::GenerateEditorTextCtrl( const wxPoint& pos,
 #endif
     SetupTextCtrlValue(value);
     tc->Create(ctrlParent,id,value, p, s,tcFlags);
-
+    
     wxWindow* ed = tc;
 
     // Center the control vertically
@@ -1700,9 +1706,9 @@ wxWindow* wxPropertyGrid::GenerateEditorTextCtrl( const wxPoint& pos,
     // Connect event handling
     id = ed->GetId();
     this->Connect(id, wxEVT_COMMAND_TEXT_UPDATED,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
     this->Connect(id, wxEVT_COMMAND_TEXT_ENTER,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
 
     return (wxWindow*) ed;
 }
@@ -1768,7 +1774,7 @@ wxWindow* wxPropertyGrid::GenerateEditorButton( const wxPoint& pos, const wxSize
     // Connect event handling
     id = but->GetId();
     this->Connect(id, wxEVT_COMMAND_BUTTON_CLICKED,
-        wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+        wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
 
     return but;
 }
@@ -1796,7 +1802,7 @@ wxWindow* wxPropertyGrid::GenerateEditorTextCtrlAndButton( const wxPoint& pos,
     wxString text;
 
     if ( !property->IsValueUnspecified() )
-        text = property->GetValueString(property->HasFlag(wxPG_PROP_READONLY)?0:wxPG_EDITABLE_VALUE);
+        text = property->GetValueAsString(property->HasFlag(wxPG_PROP_READONLY)?0:wxPG_EDITABLE_VALUE);
 
     return GenerateEditorTextCtrl(pos,sz,text,but,property->m_maxLen);
 }
@@ -1872,11 +1878,11 @@ void wxPGMultiButton::Finalize( wxPropertyGrid* propGrid, const wxPoint& pos )
     Move( pos.x + m_fullEditorSize.x - m_buttonsWidth, pos.y );
 
     // Connect event handling
-    for ( int i=0; i<GetCount(); i++ )
+    for ( unsigned int i=0; i<GetCount(); i++ )
     {
         wxWindowID id = GetButtonId(i);
         propGrid->Connect(id, wxEVT_COMMAND_BUTTON_CLICKED,
-            wxCommandEventHandler(wxPropertyGrid::OnCustomEditorEvent));
+            wxEventHandler(wxPropertyGrid::OnCustomEditorEvent));
     }
 }