~ubuntu-branches/ubuntu/hardy/codeblocks/hardy-backports

« back to all changes in this revision

Viewing changes to src/sdk/scripting/bindings/sc_consts.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Michael Casadevall
  • Date: 2008-07-17 04:39:23 UTC
  • Revision ID: james.westby@ubuntu.com-20080717043923-gmsy5cwkdjswghkm
Tags: upstream-8.02
ImportĀ upstreamĀ versionĀ 8.02

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * This file is part of the Code::Blocks IDE and licensed under the GNU Lesser General Public License, version 3
 
3
 * http://www.gnu.org/licenses/lgpl-3.0.html
 
4
 *
 
5
 * $Revision$
 
6
 * $Id$
 
7
 * $HeadURL$
 
8
 */
 
9
 
 
10
#include <sdk_precomp.h>
 
11
#ifndef CB_PRECOMP
 
12
    #include <wx/string.h>
 
13
    #include <globals.h>
 
14
    #include <settings.h>
 
15
#endif
 
16
 
 
17
#include <filefilters.h>
 
18
#include "sc_base_types.h"
 
19
 
 
20
// helper macros to bind constants
 
21
#define BIND_INT_CONSTANT(a) SqPlus::BindConstant<SQInteger>(a, #a);
 
22
#define BIND_INT_CONSTANT_NAMED(a,n) SqPlus::BindConstant<SQInteger>(a, n);
 
23
#define BIND_WXSTR_CONSTANT_NAMED(a,n) BindVariable(const_cast<wxString*>(&a), n, SqPlus::VAR_ACCESS_CONSTANT);
 
24
 
 
25
namespace ScriptBindings
 
26
{
 
27
    wxString s_PathSep = wxFILE_SEP_PATH;
 
28
 
 
29
    void Register_Constants()
 
30
    {
 
31
        // platform constants
 
32
        BIND_INT_CONSTANT_NAMED(0, "PLATFORM_MSW");
 
33
        BIND_INT_CONSTANT_NAMED(1, "PLATFORM_GTK");
 
34
        BIND_INT_CONSTANT_NAMED(2, "PLATFORM_MAC");
 
35
        BIND_INT_CONSTANT_NAMED(3, "PLATFORM_OS2");
 
36
        BIND_INT_CONSTANT_NAMED(4, "PLATFORM_X11");
 
37
        BIND_INT_CONSTANT_NAMED(99, "PLATFORM_UNKNOWN");
 
38
 
 
39
        #ifdef __WXMSW__
 
40
            BIND_INT_CONSTANT_NAMED(0, "PLATFORM");
 
41
        #elif __WXGTK__
 
42
            BIND_INT_CONSTANT_NAMED(1, "PLATFORM");
 
43
        #elif __WXMAC__
 
44
            BIND_INT_CONSTANT_NAMED(2, "PLATFORM");
 
45
        #elif __WXOS2__
 
46
            BIND_INT_CONSTANT_NAMED(3, "PLATFORM");
 
47
        #elif __WXX11__
 
48
            BIND_INT_CONSTANT_NAMED(4, "PLATFORM");
 
49
        #else
 
50
            BIND_INT_CONSTANT_NAMED(99, "PLATFORM");
 
51
        #endif
 
52
 
 
53
        BIND_INT_CONSTANT_NAMED(PLUGIN_SDK_VERSION_MAJOR, "PLUGIN_SDK_VERSION_MAJOR");
 
54
        BIND_INT_CONSTANT_NAMED(PLUGIN_SDK_VERSION_MINOR, "PLUGIN_SDK_VERSION_MINOR");
 
55
        BIND_INT_CONSTANT_NAMED(PLUGIN_SDK_VERSION_RELEASE, "PLUGIN_SDK_VERSION_RELEASE");
 
56
 
 
57
        // path separator for filenames
 
58
        BIND_WXSTR_CONSTANT_NAMED(s_PathSep, "wxFILE_SEP_PATH");
 
59
 
 
60
        // dialog buttons
 
61
        BIND_INT_CONSTANT(wxOK);
 
62
        BIND_INT_CONSTANT(wxYES_NO);
 
63
        BIND_INT_CONSTANT(wxCANCEL);
 
64
        BIND_INT_CONSTANT(wxID_OK);
 
65
        BIND_INT_CONSTANT(wxID_YES);
 
66
        BIND_INT_CONSTANT(wxID_NO);
 
67
        BIND_INT_CONSTANT(wxID_CANCEL);
 
68
        BIND_INT_CONSTANT(wxICON_QUESTION);
 
69
        BIND_INT_CONSTANT(wxICON_INFORMATION);
 
70
        BIND_INT_CONSTANT(wxICON_WARNING);
 
71
        BIND_INT_CONSTANT(wxICON_ERROR);
 
72
 
 
73
        // wxPathFormat
 
74
        BIND_INT_CONSTANT(wxPATH_NATIVE);
 
75
        BIND_INT_CONSTANT(wxPATH_UNIX);
 
76
        BIND_INT_CONSTANT(wxPATH_BEOS);
 
77
        BIND_INT_CONSTANT(wxPATH_MAC);
 
78
        BIND_INT_CONSTANT(wxPATH_DOS);
 
79
        BIND_INT_CONSTANT(wxPATH_WIN);
 
80
        BIND_INT_CONSTANT(wxPATH_OS2);
 
81
        BIND_INT_CONSTANT(wxPATH_VMS);
 
82
 
 
83
        // for wxFileName::GetPath()
 
84
        BIND_INT_CONSTANT(wxPATH_GET_VOLUME);
 
85
        BIND_INT_CONSTANT(wxPATH_GET_SEPARATOR);
 
86
 
 
87
        // wxPathNormalize
 
88
        BIND_INT_CONSTANT(wxPATH_NORM_ENV_VARS);
 
89
        BIND_INT_CONSTANT(wxPATH_NORM_DOTS);
 
90
        BIND_INT_CONSTANT(wxPATH_NORM_TILDE);
 
91
        BIND_INT_CONSTANT(wxPATH_NORM_CASE);
 
92
        BIND_INT_CONSTANT(wxPATH_NORM_ABSOLUTE);
 
93
        BIND_INT_CONSTANT(wxPATH_NORM_LONG);
 
94
        BIND_INT_CONSTANT(wxPATH_NORM_SHORTCUT);
 
95
        BIND_INT_CONSTANT(wxPATH_NORM_ALL);
 
96
 
 
97
        // OptionsRelationType
 
98
        BIND_INT_CONSTANT(ortCompilerOptions);
 
99
        BIND_INT_CONSTANT(ortLinkerOptions);
 
100
        BIND_INT_CONSTANT(ortIncludeDirs);
 
101
        BIND_INT_CONSTANT(ortLibDirs);
 
102
        BIND_INT_CONSTANT(ortResDirs);
 
103
 
 
104
        // OptionsRelation
 
105
        BIND_INT_CONSTANT(orUseParentOptionsOnly);
 
106
        BIND_INT_CONSTANT(orUseTargetOptionsOnly);
 
107
        BIND_INT_CONSTANT(orPrependToParentOptions);
 
108
        BIND_INT_CONSTANT(orAppendToParentOptions);
 
109
 
 
110
        // TargetType
 
111
        BIND_INT_CONSTANT(ttExecutable);
 
112
        BIND_INT_CONSTANT(ttConsoleOnly);
 
113
        BIND_INT_CONSTANT(ttStaticLib);
 
114
        BIND_INT_CONSTANT(ttDynamicLib);
 
115
        BIND_INT_CONSTANT(ttCommandsOnly);
 
116
        BIND_INT_CONSTANT(ttNative);
 
117
 
 
118
        // MakeCommand
 
119
        BIND_INT_CONSTANT(mcClean);
 
120
        BIND_INT_CONSTANT(mcDistClean);
 
121
        BIND_INT_CONSTANT(mcBuild);
 
122
        BIND_INT_CONSTANT(mcCompileFile);
 
123
 
 
124
        // PCHMode
 
125
        BIND_INT_CONSTANT(pchSourceDir);
 
126
        BIND_INT_CONSTANT(pchObjectDir);
 
127
        BIND_INT_CONSTANT(pchSourceFile);
 
128
 
 
129
        // printing scope for print dialog
 
130
        BIND_INT_CONSTANT(psSelection);
 
131
        BIND_INT_CONSTANT(psActiveEditor);
 
132
        BIND_INT_CONSTANT(psAllOpenEditors);
 
133
 
 
134
        // printing colour mode
 
135
        BIND_INT_CONSTANT(pcmBlackAndWhite);
 
136
        BIND_INT_CONSTANT(pcmColourOnWhite);
 
137
        BIND_INT_CONSTANT(pcmInvertColours);
 
138
        BIND_INT_CONSTANT(pcmAsIs);
 
139
 
 
140
        // TemplateOutputType
 
141
        BIND_INT_CONSTANT_NAMED(totProject, "wizProject");
 
142
        BIND_INT_CONSTANT_NAMED(totTarget, "wizTarget");
 
143
        BIND_INT_CONSTANT_NAMED(totFiles, "wizFiles");
 
144
        BIND_INT_CONSTANT_NAMED(totCustom, "wizCustom");
 
145
 
 
146
        // SearchDirs
 
147
        BIND_INT_CONSTANT(sdHome);
 
148
        BIND_INT_CONSTANT(sdBase);
 
149
        BIND_INT_CONSTANT(sdTemp);
 
150
        BIND_INT_CONSTANT(sdPath);
 
151
        BIND_INT_CONSTANT(sdConfig);
 
152
        BIND_INT_CONSTANT(sdCurrent);
 
153
        BIND_INT_CONSTANT(sdPluginsUser);
 
154
        BIND_INT_CONSTANT(sdScriptsUser);
 
155
        BIND_INT_CONSTANT(sdDataUser);
 
156
        BIND_INT_CONSTANT(sdAllUser);
 
157
        BIND_INT_CONSTANT(sdPluginsGlobal);
 
158
        BIND_INT_CONSTANT(sdScriptsGlobal);
 
159
        BIND_INT_CONSTANT(sdDataGlobal);
 
160
        BIND_INT_CONSTANT(sdAllGlobal);
 
161
        BIND_INT_CONSTANT(sdAllKnown);
 
162
 
 
163
        // SupportedPlatforms
 
164
        BIND_INT_CONSTANT(spWindows);
 
165
        BIND_INT_CONSTANT(spUnix);
 
166
        BIND_INT_CONSTANT(spMac);
 
167
        BIND_INT_CONSTANT(spAll);
 
168
 
 
169
                // TargetFilenameGenerationPolicy
 
170
        BIND_INT_CONSTANT(tgfpPlatformDefault);
 
171
        BIND_INT_CONSTANT(tgfpNone);
 
172
 
 
173
        // ModuleType
 
174
        BIND_INT_CONSTANT(mtProjectManager);
 
175
        BIND_INT_CONSTANT(mtEditorManager);
 
176
        BIND_INT_CONSTANT(mtLogManager);
 
177
        BIND_INT_CONSTANT(mtOpenFilesList);
 
178
        BIND_INT_CONSTANT(mtUnknown);
 
179
 
 
180
        // FileTreeDataKind
 
181
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkUndefined, "ftdkUndefined");
 
182
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkProject, "ftdkProject");
 
183
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkFolder, "ftdkFolder");
 
184
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkFile, "ftdkFile");
 
185
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkVirtualGroup, "ftdkVirtualGroup");
 
186
        BIND_INT_CONSTANT_NAMED(FileTreeData::ftdkVirtualFolder, "ftdkVirtualFolder");
 
187
 
 
188
        // file extensions
 
189
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::WORKSPACE_EXT, "EXT_WORKSPACE");
 
190
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CODEBLOCKS_EXT, "EXT_CODEBLOCKS");
 
191
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::DEVCPP_EXT, "EXT_DEVCPP");
 
192
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC6_EXT, "EXT_MSVC6");
 
193
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC6_WORKSPACE_EXT, "EXT_MSVC6_WORKSPACE");
 
194
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC7_EXT, "EXT_MSVC7");
 
195
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC7_WORKSPACE_EXT, "EXT_MSVC7_WORKSPACE");
 
196
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::ASM_EXT, "EXT_ASM");
 
197
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::D_EXT, "EXT_D");
 
198
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F_EXT, "EXT_F");
 
199
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F77_EXT, "EXT_F77");
 
200
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F90_EXT, "EXT_F90");
 
201
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F95_EXT, "EXT_F95");
 
202
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::JAVA_EXT, "EXT_JAVA");
 
203
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::C_EXT, "EXT_C");
 
204
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CC_EXT, "EXT_CC");
 
205
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CPP_EXT, "EXT_CPP");
 
206
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CXX_EXT, "EXT_CXX");
 
207
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::H_EXT, "EXT_H");
 
208
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HH_EXT, "EXT_HH");
 
209
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HPP_EXT, "EXT_HPP");
 
210
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HXX_EXT, "EXT_HXX");
 
211
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::S_EXT, "EXT_S");
 
212
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::SS_EXT, "EXT_SS");
 
213
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::S62_EXT, "EXT_S62");
 
214
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::OBJECT_EXT, "EXT_OBJECT");
 
215
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::XRCRESOURCE_EXT, "EXT_XRCRESOURCE");
 
216
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::STATICLIB_EXT, "EXT_STATICLIB");
 
217
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::DYNAMICLIB_EXT, "EXT_DYNAMICLIB");
 
218
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::EXECUTABLE_EXT, "EXT_EXECUTABLE");
 
219
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::EXECUTABLE_EXT, "EXT_NATIVE");
 
220
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::RESOURCE_EXT, "EXT_RESOURCE");
 
221
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::RESOURCEBIN_EXT, "EXT_RESOURCEBIN");
 
222
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::XML_EXT, "EXT_XML");
 
223
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::SCRIPT_EXT, "EXT_SCRIPT");
 
224
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::WORKSPACE_DOT_EXT, "DOT_EXT_WORKSPACE");
 
225
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CODEBLOCKS_DOT_EXT, "DOT_EXT_CODEBLOCKS");
 
226
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::DEVCPP_DOT_EXT, "DOT_EXT_DEVCPP");
 
227
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC6_DOT_EXT, "DOT_EXT_MSVC6");
 
228
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC6_WORKSPACE_DOT_EXT, "DOT_EXT_MSVC6_WORKSPACE");
 
229
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC7_DOT_EXT, "DOT_EXT_MSVC7");
 
230
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::MSVC7_WORKSPACE_DOT_EXT, "DOT_EXT_MSVC7_WORKSPACE");
 
231
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::ASM_DOT_EXT, "DOT_EXT_ASM");
 
232
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::D_DOT_EXT, "DOT_EXT_D");
 
233
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F_DOT_EXT, "DOT_EXT_F");
 
234
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F77_DOT_EXT, "DOT_EXT_F77");
 
235
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F90_DOT_EXT, "DOT_EXT_F90");
 
236
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::F95_DOT_EXT, "DOT_EXT_F95");
 
237
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::JAVA_DOT_EXT, "DOT_EXT_JAVA");
 
238
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::C_DOT_EXT, "DOT_EXT_C");
 
239
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CC_DOT_EXT, "DOT_EXT_CC");
 
240
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CPP_DOT_EXT, "DOT_EXT_CPP");
 
241
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::CXX_DOT_EXT, "DOT_EXT_CXX");
 
242
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::H_DOT_EXT, "DOT_EXT_H");
 
243
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HH_DOT_EXT, "DOT_EXT_HH");
 
244
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HPP_DOT_EXT, "DOT_EXT_HPP");
 
245
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::HXX_DOT_EXT, "DOT_EXT_HXX");
 
246
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::S_DOT_EXT, "DOT_EXT_S");
 
247
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::SS_DOT_EXT, "DOT_EXT_SS");
 
248
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::S62_DOT_EXT, "DOT_EXT_S62");
 
249
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::OBJECT_DOT_EXT, "DOT_EXT_OBJECT");
 
250
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::XRCRESOURCE_DOT_EXT, "DOT_EXT_XRCRESOURCE");
 
251
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::STATICLIB_DOT_EXT, "DOT_EXT_STATICLIB");
 
252
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::DYNAMICLIB_DOT_EXT, "DOT_EXT_DYNAMICLIB");
 
253
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::EXECUTABLE_DOT_EXT, "DOT_EXT_EXECUTABLE");
 
254
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::NATIVE_DOT_EXT, "DOT_EXT_NATIVE");
 
255
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::RESOURCE_DOT_EXT, "DOT_EXT_RESOURCE");
 
256
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::RESOURCEBIN_DOT_EXT, "DOT_EXT_RESOURCEBIN");
 
257
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::XML_DOT_EXT, "DOT_EXT_XML");
 
258
        BIND_WXSTR_CONSTANT_NAMED(FileFilters::SCRIPT_DOT_EXT, "DOT_EXT_SCRIPT");
 
259
    }
 
260
};