Add libwx-perl
[pkg-perl] / deb-src / libwx-perl / libwx-perl-0.96 / ext / docview / XS / DocTemplate.xs
1 #############################################################################
2 ## Name:        ext/docview/XS/DocTemplate.xs
3 ## Purpose:     XS for wxDocTemplate (Document/View Framework)
4 ## Author:      Simon Flack
5 ## Modified by:
6 ## Created:     11/09/2002
7 ## RCS-ID:      $Id: DocTemplate.xs 2057 2007-06-18 23:03:00Z mbarbon $
8 ## Copyright:   (c) 2001, 2004 Mattia Barbon
9 ## Licence:     This program is free software; you can redistribute it and/or
10 ##              modify it under the same terms as Perl itself
11 #############################################################################
12
13 MODULE=Wx PACKAGE=Wx::DocTemplate
14
15
16 wxDocTemplate *
17 wxDocTemplate::new(manager, descr, filter, dir, ext, docTypeName, viewTypeName, docClassInfo = NULL, viewClassInfo = NULL, flags = wxDEFAULT_TEMPLATE_FLAGS)
18     wxDocManager* manager
19     wxString descr
20     wxString filter
21     wxString dir
22     wxString ext
23     wxString docTypeName
24     wxString viewTypeName
25     SV* docClassInfo
26     SV* viewClassInfo
27     long flags
28   PREINIT:
29     wxClassInfo *docCInfo = 0, *viewCInfo = 0;
30     wxString docClassName, viewClassName;
31     bool hasDocInfo, hasViewInfo;
32   CODE:
33     if( docClassInfo )
34     {
35         hasDocInfo = SvROK( docClassInfo );
36         if( hasDocInfo )
37         {
38             docCInfo = (wxClassInfo*)wxPli_sv_2_object( aTHX_ docClassInfo,
39                                                         "Wx::ClassInfo" );
40         }
41         else
42         {
43             WXSTRING_INPUT( docClassName, wxString, docClassInfo );
44         }
45     }
46
47     if( viewClassInfo )
48     {
49         hasViewInfo = SvROK( viewClassInfo );
50         if( hasViewInfo )
51         {
52             viewCInfo = (wxClassInfo*)wxPli_sv_2_object( aTHX_ viewClassInfo,
53                                                          "Wx::ClassInfo" );
54         }
55         else
56         {
57             WXSTRING_INPUT( viewClassName, wxString, viewClassInfo );
58         }
59     }
60
61     RETVAL = new wxPliDocTemplate( CLASS, manager, descr, filter, dir, ext,
62                                    docTypeName, viewTypeName,
63                                    docCInfo, viewCInfo, flags,
64                                    docClassName, viewClassName );
65   OUTPUT:
66     RETVAL
67
68 wxDocument *
69 wxDocTemplate::CreateDocument( path, flags )
70     wxString path
71     long flags
72
73 wxView *
74 wxDocTemplate::CreateView( doc, flags )
75     wxDocument* doc
76     long flags
77
78 wxString
79 wxDocTemplate::GetDefaultExtension()
80
81 wxString
82 wxDocTemplate::GetDescription()
83
84 wxString
85 wxDocTemplate::GetDirectory()
86
87 wxDocManager *
88 wxDocTemplate::GetDocumentManager()
89
90 void
91 wxDocTemplate::SetDocumentManager( manager )
92     wxDocManager* manager
93
94 wxString
95 wxDocTemplate::GetFileFilter()
96
97 long
98 wxDocTemplate::GetFlags()
99
100 wxString
101 wxDocTemplate::GetViewName()
102
103 wxString
104 wxDocTemplate::GetDocumentName()
105
106 void
107 wxDocTemplate::SetFileFilter( filter )
108     wxString filter
109
110 void
111 wxDocTemplate::SetDirectory( dir )
112     wxString dir
113
114 void
115 wxDocTemplate::SetDescription( descr )
116     wxString descr
117
118 void
119 wxDocTemplate::SetDefaultExtension( ext )
120     wxString ext
121
122 void
123 wxDocTemplate::SetFlags( flags )
124     long flags
125
126 bool
127 wxDocTemplate::IsVisible()
128
129 bool
130 wxDocTemplate::FileMatchesTemplate( path )
131     wxString path