1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        src/xrc/xh_filepicker.cpp
3 // Purpose:     XML resource handler for wxFilePickerCtrl
4 // Author:      Francesco Montorsi
5 // Created:     2006-04-17
6 // Copyright:   (c) 2006 Francesco Montorsi
7 // Licence:     wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9 
10 // For compilers that support precompilation, includes "wx.h".
11 #include "wx/wxprec.h"
12 
13 
14 #if wxUSE_XRC && wxUSE_FILEPICKERCTRL
15 
16 #include "wx/xrc/xh_filepicker.h"
17 #include "wx/filepicker.h"
18 
19 wxIMPLEMENT_DYNAMIC_CLASS(wxFilePickerCtrlXmlHandler, wxXmlResourceHandler);
20 
wxFilePickerCtrlXmlHandler()21 wxFilePickerCtrlXmlHandler::wxFilePickerCtrlXmlHandler() : wxXmlResourceHandler()
22 {
23     XRC_ADD_STYLE(wxFLP_OPEN);
24     XRC_ADD_STYLE(wxFLP_SAVE);
25     XRC_ADD_STYLE(wxFLP_OVERWRITE_PROMPT);
26     XRC_ADD_STYLE(wxFLP_FILE_MUST_EXIST);
27     XRC_ADD_STYLE(wxFLP_CHANGE_DIR);
28     XRC_ADD_STYLE(wxFLP_SMALL);
29     XRC_ADD_STYLE(wxFLP_DEFAULT_STYLE);
30     XRC_ADD_STYLE(wxFLP_USE_TEXTCTRL);
31     AddWindowStyles();
32 }
33 
DoCreateResource()34 wxObject *wxFilePickerCtrlXmlHandler::DoCreateResource()
35 {
36     XRC_MAKE_INSTANCE(picker, wxFilePickerCtrl)
37 
38     picker->Create(m_parentAsWindow,
39                   GetID(),
40                   GetParamValue(wxT("value")),
41                   GetText(wxT("message")),
42                   GetParamValue(wxT("wildcard")),
43                   GetPosition(), GetSize(),
44                   GetStyle(wxT("style"), wxFLP_DEFAULT_STYLE),
45                   wxDefaultValidator,
46                   GetName());
47 
48     SetupWindow(picker);
49     return picker;
50 }
51 
CanHandle(wxXmlNode * node)52 bool wxFilePickerCtrlXmlHandler::CanHandle(wxXmlNode *node)
53 {
54     return IsOfClass(node, wxT("wxFilePickerCtrl"));
55 }
56 
57 #endif // wxUSE_XRC && wxUSE_FILEPICKERCTRL
58