~ubuntu-branches/ubuntu/utopic/anjuta/utopic-proposed

« back to all changes in this revision

Viewing changes to plugins/project-manager/project.c

  • Committer: Package Import Robot
  • Author(s): Andreas Henriksson, Jackson Doak
  • Date: 2014-07-12 15:17:39 UTC
  • mfrom: (1.4.14)
  • Revision ID: package-import@ubuntu.com-20140712151739-p9xy0ntlgbpm2nxq
Tags: 2:3.12.0-1
* Team upload.

[ Jackson Doak ]
* New upstream release
* Drop 03_valac_0.22.patch, fixed upstream\
* debian/control:
  - Bump b-dep version on libgtk-3-dev (>= 3.6.0), libglib2.0-dev (>= 2.34.0)
  - Bump stardards-version to 3.9.5. No changes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
120
120
 *---------------------------------------------------------------------------*/
121
121
 
122
122
gboolean
123
 
anjuta_pm_project_load_with_backend (AnjutaPmProject *project, GFile *file, AnjutaPluginDescription *backend, GError **error)
 
123
anjuta_pm_project_load_with_backend (AnjutaPmProject *project, GFile *file, AnjutaPluginHandle *backend, GError **error)
124
124
{
125
125
        AnjutaPluginManager *plugin_manager;
126
 
        gchar *location = NULL;
127
126
        IAnjutaProjectBackend *plugin;
128
127
        GValue value = {0, };
129
128
 
130
 
        anjuta_plugin_description_get_string (backend, "Anjuta Plugin", "Location", &location);
131
129
        plugin_manager = anjuta_shell_get_plugin_manager (project->plugin->shell, NULL);
132
 
        plugin = (IAnjutaProjectBackend *)anjuta_plugin_manager_get_plugin_by_id (plugin_manager, location);
133
 
        g_free (location);
 
130
        plugin = (IAnjutaProjectBackend *)anjuta_plugin_manager_get_plugin_by_handle (plugin_manager, backend);
134
131
 
135
132
        
136
133
        DEBUG_PRINT ("%s", "Creating new gbf project\n");
184
181
        AnjutaPluginManager *plugin_manager;
185
182
        GList *desc;
186
183
        IAnjutaProjectBackend *backend;
187
 
        AnjutaPluginDescription *backend_desc;
 
184
        AnjutaPluginHandle *backend_handle;
188
185
        gint found = 0;
189
186
 
190
187
        g_return_val_if_fail (file != NULL, FALSE);
194
191
 
195
192
        if (!anjuta_plugin_manager_is_active_plugin (plugin_manager, "IAnjutaProjectBackend"))
196
193
        {
197
 
                GList *descs = NULL;
 
194
                GList *handles = NULL;
198
195
 
199
 
                descs = anjuta_plugin_manager_query (plugin_manager,
 
196
                handles = anjuta_plugin_manager_query (plugin_manager,
200
197
                                                                                         "Anjuta Plugin",
201
198
                                                                                         "Interfaces",
202
199
                                                                                         "IAnjutaProjectBackend",
203
200
                                                                                         NULL);
204
201
                backend = NULL;
205
 
                for (desc = g_list_first (descs); desc != NULL; desc = g_list_next (desc)) {
206
 
                        gchar *location = NULL;
 
202
                for (desc = g_list_first (handles); desc != NULL; desc = g_list_next (desc)) {
207
203
                        IAnjutaProjectBackend *plugin;
208
204
                        gint backend_val;
209
205
 
210
 
                        backend_desc = (AnjutaPluginDescription *)desc->data;
211
 
                        anjuta_plugin_description_get_string (backend_desc, "Anjuta Plugin", "Location", &location);
212
 
                        plugin = (IAnjutaProjectBackend *)anjuta_plugin_manager_get_plugin_by_id (plugin_manager, location);
213
 
                        g_free (location);
 
206
                        backend_handle = (AnjutaPluginHandle *)desc->data;
 
207
                        plugin = (IAnjutaProjectBackend *)anjuta_plugin_manager_get_plugin_by_handle (plugin_manager, backend_handle);
214
208
 
215
209
                        backend_val = ianjuta_project_backend_probe (plugin, file, NULL);
216
210
                        if (backend_val > found)
220
214
                                found = backend_val;
221
215
                        }
222
216
                }
223
 
                g_list_free (descs);
 
217
                g_list_free (handles);
224
218
        }
225
219
        else
226
220
        {
239
233
                return FALSE;
240
234
        }
241
235
        
242
 
        backend_desc = anjuta_plugin_manager_get_plugin_description (plugin_manager, G_OBJECT(backend));
 
236
        backend_handle = anjuta_plugin_manager_get_plugin_handle (plugin_manager, G_OBJECT(backend));
243
237
 
244
 
        return anjuta_pm_project_load_with_backend (project, file, backend_desc, error);
 
238
        return anjuta_pm_project_load_with_backend (project, file, backend_handle, error);
245
239
}
246
240
 
247
241
gboolean
418
412
        return (project->project != NULL) && (project->root != NULL);
419
413
}
420
414
 
421
 
AnjutaPluginDescription *
 
415
AnjutaPluginHandle *
422
416
anjuta_pm_project_get_backend (AnjutaPmProject *project)
423
417
{
424
418
        return project->backend;