]> git.saurik.com Git - wxWidgets.git/blobdiff - src/xrc/xh_slidr.cpp
supporting events also for root control (needed for event handling of mouse and paint...
[wxWidgets.git] / src / xrc / xh_slidr.cpp
index de99697f634bd1b1459ea3389a496713a8ec03e4..10e16450ccadf28ac2a59d0f4bf152484a06c803 100644 (file)
 
 #if wxUSE_SLIDER
 
+IMPLEMENT_DYNAMIC_CLASS(wxSliderXmlHandler, wxXmlResourceHandler)
+
 wxSliderXmlHandler::wxSliderXmlHandler() 
 : wxXmlResourceHandler() 
 {
-    ADD_STYLE( wxSL_HORIZONTAL );
-    ADD_STYLE( wxSL_VERTICAL );
-    ADD_STYLE( wxSL_AUTOTICKS );
-    ADD_STYLE( wxSL_LABELS );
-    ADD_STYLE( wxSL_LEFT );
-    ADD_STYLE( wxSL_TOP );
-    ADD_STYLE( wxSL_RIGHT );
-    ADD_STYLE( wxSL_BOTTOM );
-    ADD_STYLE( wxSL_BOTH );
-    ADD_STYLE( wxSL_SELRANGE );
+    XRC_ADD_STYLE(wxSL_HORIZONTAL);
+    XRC_ADD_STYLE(wxSL_VERTICAL);
+    XRC_ADD_STYLE(wxSL_AUTOTICKS);
+    XRC_ADD_STYLE(wxSL_LABELS);
+    XRC_ADD_STYLE(wxSL_LEFT);
+    XRC_ADD_STYLE(wxSL_TOP);
+    XRC_ADD_STYLE(wxSL_RIGHT);
+    XRC_ADD_STYLE(wxSL_BOTTOM);
+    XRC_ADD_STYLE(wxSL_BOTH);
+    XRC_ADD_STYLE(wxSL_SELRANGE);
     AddWindowStyles();
 }
 
 wxObject *wxSliderXmlHandler::DoCreateResource()
 { 
-    wxSlider *control = wxStaticCast(m_instance, wxSlider);
-
-    if (!control)
-       control = new wxSlider;
+    XRC_MAKE_INSTANCE(control, wxSlider)
 
     control->Create(m_parentAsWindow,
                     GetID(),
@@ -57,29 +56,29 @@ wxObject *wxSliderXmlHandler::DoCreateResource()
                     wxDefaultValidator,
                     GetName());
 
-    if( HasParam( wxT("tickfreq") ))
+    if( HasParam(wxT("tickfreq")))
     {
-        control->SetTickFreq( GetLong( wxT("tickfreq") ), 0 );
+        control->SetTickFreq(GetLong(wxT("tickfreq")), 0);
     }
-    if( HasParam( wxT("pagesize") ))
+    if( HasParam(wxT("pagesize")))
     {
-        control->SetPageSize( GetLong( wxT("pagesize") ) );
+        control->SetPageSize(GetLong(wxT("pagesize")));
     }
-    if( HasParam( wxT("linesize") ))
+    if( HasParam(wxT("linesize")))
     {
-        control->SetLineSize( GetLong( wxT("linesize") ));
+        control->SetLineSize(GetLong(wxT("linesize")));
     }
-    if( HasParam( wxT("thumb") ))
+    if( HasParam(wxT("thumb")))
     {
-        control->SetThumbLength( GetLong( wxT("thumb") ));
+        control->SetThumbLength(GetLong(wxT("thumb")));
     }
-    if( HasParam( wxT("tick") ))
+    if( HasParam(wxT("tick")))
     {
-        control->SetTick( GetLong( wxT("tick") ));
+        control->SetTick(GetLong(wxT("tick")));
     }
-    if( HasParam( wxT("selmin") ) && HasParam( wxT("selmax")) )
+    if( HasParam(wxT("selmin")) && HasParam(wxT("selmax")))
     {
-        control->SetSelection( GetLong( wxT("selmin") ), GetLong( wxT("selmax")) );
+        control->SetSelection(GetLong(wxT("selmin")), GetLong(wxT("selmax")));
     }
 
     SetupWindow(control);
@@ -87,12 +86,9 @@ wxObject *wxSliderXmlHandler::DoCreateResource()
     return control;
 }
 
-
-
 bool wxSliderXmlHandler::CanHandle(wxXmlNode *node)
 {
     return IsOfClass(node, wxT("wxSlider"));
 }
 
-
 #endif