]>
git.saurik.com Git - wxWidgets.git/blob - contrib/src/xrc/xh_statbar.cpp
ef9f2e19c27694836a6aa4d3cba66c0230c49c1c
   1 ///////////////////////////////////////////////////////////////////////////// 
   2 // Name:        xh_statbar.cpp 
   3 // Purpose:     XRC resource for wxStatusBar 
   4 // Author:      Brian Ravnsgaard Riis 
   7 // Copyright:   (c) 2004 Brian Ravnsgaard Riis 
   8 // Licence:     wxWindows licence 
   9 ///////////////////////////////////////////////////////////////////////////// 
  12 #pragma implementation "xh_statbar.h" 
  15 // For compilers that support precompilation, includes "wx.h". 
  16 #include "wx/wxprec.h" 
  23 #include "wx/string.h" 
  27 #include "wx/xrc/xh_statbar.h" 
  28 #include "wx/statusbr.h" 
  30 IMPLEMENT_DYNAMIC_CLASS(wxStatusBarXmlHandler
, wxXmlResourceHandler
) 
  32 wxStatusBarXmlHandler::wxStatusBarXmlHandler() :  
  33         wxXmlResourceHandler() 
  35     XRC_ADD_STYLE(wxST_SIZEGRIP
); 
  39 wxObject 
*wxStatusBarXmlHandler::DoCreateResource() 
  41     XRC_MAKE_INSTANCE(statbar
, wxStatusBar
) 
  43     statbar
->Create(m_parentAsWindow
, 
  48     int fields 
= GetLong(wxT("fields"), 1); 
  49     wxString widths 
= GetParamValue(wxT("widths")); 
  53         int *width 
= new int[fields
]; 
  55         for (unsigned int i 
= 0; i 
< fields
; ++i
) 
  57             width
[i
] = wxAtoi(widths
.BeforeFirst(wxT(','))); 
  58             if(widths
.Find(wxT(','))) 
  59                 widths
.Remove(0, widths
.Find(wxT(',')) + 1); 
  61         statbar
->SetFieldsCount(fields
, width
); 
  67         wxFrame 
*parentFrame 
= wxDynamicCast(m_parent
, wxFrame
); 
  69             parentFrame
->SetStatusBar(statbar
); 
  75 bool wxStatusBarXmlHandler::CanHandle(wxXmlNode 
*node
) 
  77     return IsOfClass(node
, wxT("wxStatusBar"));