]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/valgen.cpp
document On{Open,Save}Document()
[wxWidgets.git] / src / common / valgen.cpp
index f1b5a10e455f06a5e2db842df21be9ba3d6e44cd..e38f6789bdc55571411313d03ecd4eb8ea36d756 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        valgen.cpp
+// Name:        src/common/valgen.cpp
 // Purpose:     wxGenericValidator class
 // Author:      Kevin Smith
 // Modified by:
@@ -9,49 +9,42 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma implementation "valgen.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
-  #pragma hdrstop
-#endif
-
-#ifndef WX_PRECOMP
-  #include "wx/defs.h"
+    #pragma hdrstop
 #endif
 
 #if wxUSE_VALIDATORS
 
 #ifndef WX_PRECOMP
-  #include "wx/utils.h"
-  #include "wx/intl.h"
-  #include "wx/dynarray.h"
-  #include "wx/choice.h"
-  #include "wx/combobox.h"
-  #include "wx/radiobox.h"
-  #include "wx/radiobut.h"
-  #include "wx/checkbox.h"
-  #include "wx/scrolbar.h"
-  #include "wx/gauge.h"
-  #include "wx/stattext.h"
-  #include "wx/textctrl.h"
-  #include "wx/button.h"
-  #include "wx/listbox.h"
-  #include "wx/slider.h"
-#endif
-
-
-  #include "wx/spinctrl.h"
+    #include "wx/dynarray.h"
+    #include "wx/utils.h"
+    #include "wx/intl.h"
+    #include "wx/choice.h"
+    #include "wx/combobox.h"
+    #include "wx/radiobox.h"
+    #include "wx/radiobut.h"
+    #include "wx/checkbox.h"
+    #include "wx/scrolbar.h"
+    #include "wx/gauge.h"
+    #include "wx/stattext.h"
+    #include "wx/textctrl.h"
+    #include "wx/button.h"
+    #include "wx/listbox.h"
+    #include "wx/slider.h"
+    #include "wx/checklst.h"
+#endif
+
+#include "wx/spinctrl.h"
+#include "wx/datectrl.h"
 
 #if wxUSE_SPINBTN
-  #include "wx/spinbutt.h"
+    #include "wx/spinbutt.h"
 #endif
-#if wxUSE_CHECKLISTBOX
-  #include "wx/checklst.h"
+#if wxUSE_TOGGLEBTN
+    #include "wx/tglbtn.h"
 #endif
 
 #include "wx/valgen.h"
@@ -82,6 +75,16 @@ wxGenericValidator::wxGenericValidator(wxArrayInt *val)
     m_pArrayInt = val;
 }
 
+#if wxUSE_DATETIME
+
+wxGenericValidator::wxGenericValidator(wxDateTime *val)
+{
+    Initialize();
+    m_pDateTime = val;
+}
+
+#endif // wxUSE_DATETIME
+
 wxGenericValidator::wxGenericValidator(const wxGenericValidator& val)
     : wxValidator()
 {
@@ -96,6 +99,9 @@ bool wxGenericValidator::Copy(const wxGenericValidator& val)
     m_pInt = val.m_pInt;
     m_pString = val.m_pString;
     m_pArrayInt = val.m_pArrayInt;
+#if wxUSE_DATETIME
+    m_pDateTime = val.m_pDateTime;
+#endif // wxUSE_DATETIME
 
     return true;
 }
@@ -130,6 +136,29 @@ bool wxGenericValidator::TransferToWindow(void)
     } else
 #endif
 
+#if wxUSE_TOGGLEBTN
+    if (m_validatorWindow->IsKindOf(CLASSINFO(wxToggleButton)) )
+    {
+        wxToggleButton * pControl = (wxToggleButton *) m_validatorWindow;
+        if (m_pBool)
+        {
+            pControl->SetValue(*m_pBool);
+            return true;
+        }
+    } else
+#if defined(__WXMAC__) || defined(__WXGTK20__)
+    if (m_validatorWindow->IsKindOf(CLASSINFO(wxBitmapToggleButton)) )
+    {
+        wxBitmapToggleButton * pControl = (wxBitmapToggleButton *) m_validatorWindow;
+        if (m_pBool)
+        {
+            pControl->SetValue(*m_pBool);
+            return true;
+        }
+    } else
+#endif
+#endif
+
     // int controls
 #if wxUSE_GAUGE
     if (m_validatorWindow->IsKindOf(CLASSINFO(wxGauge)) )
@@ -198,6 +227,19 @@ bool wxGenericValidator::TransferToWindow(void)
     } else
 #endif
 
+    // date time controls
+#if 0 // wxUSE_DATEPICKCTRL -- temporary fix for shared build linking
+    if (m_validatorWindow->IsKindOf(CLASSINFO(wxDatePickerCtrl)) )
+    {
+        wxDatePickerCtrl* pControl = (wxDatePickerCtrl*) m_validatorWindow;
+        if (m_pDateTime)
+        {
+            pControl->SetValue(*m_pDateTime) ;
+            return true;
+        }
+    } else
+#endif
+
     // string controls
 #if wxUSE_BUTTON
     if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
@@ -281,6 +323,7 @@ bool wxGenericValidator::TransferToWindow(void)
         }
     } else
 #endif
+
     // array controls
 #if wxUSE_CHECKLISTBOX
     // NOTE: wxCheckListBox is a wxListBox, so wxCheckListBox MUST come first:
@@ -362,6 +405,17 @@ bool wxGenericValidator::TransferFromWindow(void)
         }
     } else
 #endif
+#if wxUSE_TOGGLEBTN
+    if (m_validatorWindow->IsKindOf(CLASSINFO(wxToggleButton)) )
+    {
+        wxToggleButton *pControl = (wxToggleButton *) m_validatorWindow;
+        if (m_pBool)
+        {
+            *m_pBool = pControl->GetValue() ;
+            return true;
+        }
+    } else
+#endif
 
     // INT CONTROLS ***************************************
 #if wxUSE_GAUGE
@@ -431,6 +485,19 @@ bool wxGenericValidator::TransferFromWindow(void)
     } else
 #endif
 
+    // DATE TIME CONTROLS ************************************
+#if 0 // wxUSE_DATEPICKCTRL -- temporary fix for shared build linking
+    if (m_validatorWindow->IsKindOf(CLASSINFO(wxDatePickerCtrl)) )
+    {
+        wxDatePickerCtrl* pControl = (wxDatePickerCtrl*) m_validatorWindow;
+        if (m_pDateTime)
+        {
+            *m_pDateTime = pControl->GetValue() ;
+            return true;
+        }
+    } else
+#endif
+
     // STRING CONTROLS ************************************
 #if wxUSE_BUTTON
     if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
@@ -546,7 +613,7 @@ bool wxGenericValidator::TransferFromWindow(void)
                    count = pControl->GetCount();
             for ( i = 0; i < count; i++ )
             {
-                if (pControl->Selected(i))
+                if (pControl->IsSelected(i))
                     m_pArrayInt->Add(i);
             }
 
@@ -570,8 +637,9 @@ void wxGenericValidator::Initialize()
     m_pInt = 0;
     m_pString = 0;
     m_pArrayInt = 0;
+#if wxUSE_DATETIME
+    m_pDateTime = 0;
+#endif // wxUSE_DATETIME
 }
 
-#endif
-  // wxUSE_VALIDATORS
-
+#endif // wxUSE_VALIDATORS