~ubuntu-branches/ubuntu/karmic/codelite/karmic

« back to all changes in this revision

Viewing changes to Interfaces/plugin.h

  • Committer: Bazaar Package Importer
  • Author(s): Chow Loong Jin
  • Date: 2009-08-15 17:42:43 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20090815174243-nlb9ikgigbiybz12
Tags: 1.0.2893+dfsg-0ubuntu1
* debian/rules:
  + Tidy up get-orig-source rule
* debian/control:
  + Bump Standards-Version
  + Change Maintainer email address to @ubuntu.com
  + Drop cdbs build-dependency
* debian/copyright:
  + Update to DEP-5 format
* debian/patches/00_add-fPIC.patch:
  + Dropped, fix upstream
* Closes LP: #413992

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
#include "imanager.h"
29
29
#include "wx/toolbar.h"
30
30
#include "wx/event.h"
 
31
#include "wx/notebook.h"
31
32
#include "plugindata.h"
32
33
#include "plugin_version.h"
33
34
 
130
131
        wxEVT_EDITOR_CLOSING,
131
132
        //clientData is NULL
132
133
        wxEVT_ALL_EDITORS_CLOSED,
133
 
        //clientData is NULL
 
134
 
 
135
 
 
136
        // This event is sent from plugins to the application to tell it to reload
 
137
        // any open files (and re-tag them as well)
 
138
        wxEVT_CMD_RELOAD_EXTERNALLY_MODIFIED,
 
139
 
 
140
        // Sent by the project settings dialogs to indicate that
 
141
        // the project configurations are saved
 
142
        // clientData is the project name (wxString*)
 
143
        // event.GetString() returns the selected configuration
 
144
        wxEVT_CMD_PROJ_SETTINGS_SAVED,
 
145
 
 
146
        /**
 
147
         * Build related events
 
148
         */
 
149
 
 
150
        // clientData is NULL
134
151
        wxEVT_BUILD_STARTED,
135
 
        //clientData is NULL
 
152
 
 
153
        // clientData is NULL
136
154
        wxEVT_BUILD_ENDED,
137
 
        //clientData is the builded project name (wxString*)
 
155
 
 
156
        // sent by the application to the plugins to indicate that a
 
157
        // build process is about to start. by handling this event
 
158
        // and by avoid calling event.Skip() codelite will NOT start
 
159
        // the build process
 
160
        // clientData is the builded project name (wxString*)
 
161
        // event.GetString() returns the selected configuration
138
162
        wxEVT_BUILD_STARTING,
139
163
 
140
 
        // This event is sent from plugins to the application to tell it to reload
141
 
        // any open files (and re-tag them as well)
142
 
        wxEVT_CMD_RELOAD_EXTERNALLY_MODIFIED
 
164
        // return the project clean command
 
165
        // clientData is the builded project name (wxString*)
 
166
        // event.GetString() returns the selected configuration
 
167
        // the returned answer is expected in the event.SetString() and by
 
168
        // avoid calling event.Skip()
 
169
        wxEVT_GET_PROJECT_CLEAN_CMD,
 
170
 
 
171
        // return the project build command
 
172
        // clientData is the builded project name (wxString*)
 
173
        // event.GetString() returns the selected configuration
 
174
        // the returned answer is expected in the event.SetString() and by
 
175
        // avoid calling event.Skip()
 
176
        wxEVT_GET_PROJECT_BUILD_CMD,
 
177
 
 
178
        // the below two events are sent by the application to the plugins to query whether a
 
179
        // given project and build configuration are handled by the plugin.
 
180
        // the first event is whether the makefile file is generated by the plugin
 
181
        // and the second is to know whether the build process is also being
 
182
        // handled by the plugin.
 
183
        // clientData is the builded project name (wxString*)
 
184
        // event.GetString() returns the selected configuration
 
185
        // the return answer is done by simply avoid calling event.Skip() (which will result in ProcessEvent() == true)
 
186
        wxEVT_GET_IS_PLUGIN_MAKEFILE,
 
187
        wxEVT_GET_IS_PLUGIN_BUILD
 
188
 
143
189
};
144
190
 
145
191
//------------------------------------------------------------------
246
292
                }
247
293
                return wxNullBitmap;
248
294
        }
 
295
 
 
296
 
 
297
        /**
 
298
         * @brief allow the plugins to hook a tab in the project settings
 
299
         * @param notebook the parent
 
300
         * @param configName the associated configuration name
 
301
         */
 
302
        virtual void HookProjectSettingsTab(wxNotebook *notebook, const wxString &projectName, const wxString &configName) {
 
303
                wxUnusedVar( notebook );
 
304
                wxUnusedVar( projectName );
 
305
                wxUnusedVar( configName );
 
306
        }
 
307
 
 
308
        /**
 
309
         * @brief Unhook any tab from the project settings dialog
 
310
         * @param notebook the parent
 
311
         * @param configName the associated configuration name
 
312
         */
 
313
        virtual void UnHookProjectSettingsTab(wxNotebook *notebook, const wxString &projectName, const wxString &configName) {
 
314
                wxUnusedVar( notebook );
 
315
                wxUnusedVar( projectName );
 
316
                wxUnusedVar( configName );
 
317
        }
249
318
};
250
319
 
251
320
//Every dll must contain at least this function
252
 
typedef IPlugin* (*GET_PLUGIN_CREATE_FUNC)(IManager*);
253
 
typedef PluginInfo (*GET_PLUGIN_INFO_FUNC)();
254
 
typedef int (*GET_PLUGIN_INTERFACE_VERSION_FUNC)();
 
321
typedef IPlugin*    (*GET_PLUGIN_CREATE_FUNC)            (IManager*);
 
322
typedef PluginInfo  (*GET_PLUGIN_INFO_FUNC)              ();
 
323
typedef int         (*GET_PLUGIN_INTERFACE_VERSION_FUNC) ();
255
324
#endif //PLUGIN_H