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// RCS-ID:      $Id: xh_filepicker.cpp 55531 2008-09-09 19:36:41Z VS $
7// Copyright:   (c) 2006 Francesco Montorsi
8// Licence:     wxWindows licence
9/////////////////////////////////////////////////////////////////////////////
10
11// For compilers that support precompilation, includes "wx.h".
12#include "wx/wxprec.h"
13
14#ifdef __BORLANDC__
15    #pragma hdrstop
16#endif
17
18#if wxUSE_XRC && wxUSE_FILEPICKERCTRL
19
20#include "wx/xrc/xh_filepicker.h"
21#include "wx/filepicker.h"
22
23IMPLEMENT_DYNAMIC_CLASS(wxFilePickerCtrlXmlHandler, wxXmlResourceHandler)
24
25wxFilePickerCtrlXmlHandler::wxFilePickerCtrlXmlHandler() : wxXmlResourceHandler()
26{
27    XRC_ADD_STYLE(wxFLP_OPEN);
28    XRC_ADD_STYLE(wxFLP_SAVE);
29    XRC_ADD_STYLE(wxFLP_OVERWRITE_PROMPT);
30    XRC_ADD_STYLE(wxFLP_FILE_MUST_EXIST);
31    XRC_ADD_STYLE(wxFLP_CHANGE_DIR);
32    XRC_ADD_STYLE(wxFLP_DEFAULT_STYLE);
33    XRC_ADD_STYLE(wxFLP_USE_TEXTCTRL);
34    AddWindowStyles();
35}
36
37wxObject *wxFilePickerCtrlXmlHandler::DoCreateResource()
38{
39    XRC_MAKE_INSTANCE(picker, wxFilePickerCtrl)
40
41    picker->Create(m_parentAsWindow,
42                  GetID(),
43                  GetParamValue(wxT("value")),
44                  GetText(wxT("message")),
45                  GetParamValue(wxT("wildcard")),
46                  GetPosition(), GetSize(),
47                  GetStyle(_T("style"), wxFLP_DEFAULT_STYLE),
48                  wxDefaultValidator,
49                  GetName());
50
51    SetupWindow(picker);
52    return picker;
53}
54
55bool wxFilePickerCtrlXmlHandler::CanHandle(wxXmlNode *node)
56{
57    return IsOfClass(node, wxT("wxFilePickerCtrl"));
58}
59
60#endif // wxUSE_XRC && wxUSE_FILEPICKERCTRL
61