1 /*
2  * Copyright 2005-2007 Gerald Schmidt.
3  *
4  * This file is part of Xml Copy Editor.
5  *
6  * Xml Copy Editor is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  *
11  * Xml Copy Editor is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Xml Copy Editor; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19  */
20 
21 #ifndef MYPROPERTYSHEET_H
22 #define MYPROPERTYSHEET_H
23 
24 #include <wx/wx.h>
25 #include <wx/generic/propdlg.h>
26 #include <wx/filename.h>
27 #include "xmlctrl.h"
28 
29 enum
30 {
31 	APPLICATION_DIR_BROWSE,
32 	FONT_BROWSE
33 };
34 
35 class MyPropertySheet : public wxPropertySheetDialog
36 {
37 	public:
38 		MyPropertySheet (
39 		    wxWindow *parent,
40 		    XmlCtrlProperties& propertiesParameter,
41 		    wxString& applicationDirParameter,
42 		    bool &rememberOpenTabsParameter,
43 		    bool &libxmlNetAccess,
44 		    bool &singleInstanceCheck,
45 		    bool &saveBom,
46 		    bool &unlimitedUndo,
47 		    bool &restoreLayout,
48 		    bool &expandInternalEntities,
49 		    bool &showFullPathOnFrame,
50 		    int &lang,
51 		    const std::set<const wxLanguageInfo *> &translations,
52 		    wxWindowID id = wxID_ANY,
53 		    wxString title = _T ( "" ),
54 		    const wxPoint& position = wxDefaultPosition,
55 		    const wxSize& size = wxDefaultSize,
56 		    long style = wxDEFAULT_DIALOG_STYLE );
57 		~MyPropertySheet();
58 		void OnOk ( wxCommandEvent& e );
59 		void OnApplicationDirBrowse ( wxCommandEvent& e );
60 	private:
61 		int &lang;
62 		wxCheckBox *completionBox,
63 		*currentLineBox,
64 		*foldBox,
65 		*foldCompactBox,
66 		*numberBox,
67 		*whitespaceVisibleBox,
68 		*indentLinesBox,
69 		*deleteWholeTagBox,
70 		*rememberOpenTabsBox,
71 		*libxmlNetAccessBox,
72 		*singleInstanceCheckBox,
73 		*saveBomBox,
74 		*protectHiddenElementsBox,
75 		*toggleLineBackgroundBox,
76 		*validateAsYouTypeBox,
77 		*fullPathBox,
78 		*highlightSyntaxBox,
79 		*unlimitedUndoBox,
80 		*restoreLayoutBox,
81 		*expandInternalEntitiesBox,
82 		*insertCloseTagBox;
83 		wxChoice *languageBox, *fontBox;
84 		wxTextCtrl *applicationDirEdit;
85 		XmlCtrlProperties &properties;
86 		wxString &applicationDir;
87 		bool &singleInstanceCheck,
88 		&rememberOpenTabs,
89 		&libxmlNetAccess,
90 		&saveBom,
91 		&unlimitedUndo,
92 		&restoreLayout,
93 		&expandInternalEntities,
94 		&showFullPathOnFrame;
95 
96 		DECLARE_EVENT_TABLE()
97 };
98 
99 #endif
100