~noskcaj/ubuntu/vivid/gthumb/flickr-https

« back to all changes in this revision

Viewing changes to extensions/flicker/callbacks.c

  • Committer: Package Import Robot
  • Author(s): Jackson Doak
  • Date: 2014-04-08 06:31:09 UTC
  • mfrom: (1.3.20)
  • Revision ID: package-import@ubuntu.com-20140408063109-tk845map8ji6uxvd
Tags: 3:3.3.1.is.3.2.7-0ubuntu1
* Revert to newest upstream stable release. LP: #1290691
  - Refresh patches

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
#include <glib/gi18n.h>
25
25
#include <glib-object.h>
26
26
#include <gthumb.h>
27
 
#include <extensions/export_tools/export-tools.h>
28
 
#include <extensions/photo_importer/photo-importer.h>
29
27
#include "actions.h"
30
 
#include "callbacks.h"
31
 
 
32
 
 
33
 
static const GActionEntry actions[] = {
34
 
        { "export-flickr", gth_browser_activate_export_flickr },
35
 
        { "import-flickr", gth_browser_activate_import_flickr }
 
28
 
 
29
 
 
30
#define BROWSER_DATA_KEY "flicker-browser-data"
 
31
 
 
32
 
 
33
static const char *ui_info =
 
34
"<ui>"
 
35
"  <menubar name='MenuBar'>"
 
36
"    <menu name='File' action='FileMenu'>"
 
37
"      <menu name='Import' action='ImportMenu'>"
 
38
"        <placeholder name='Web_Services'>"
 
39
"          <menuitem action='File_Import_Flicker'/>"
 
40
"        </placeholder>"
 
41
"      </menu>"
 
42
"      <menu name='Export' action='ExportMenu'>"
 
43
"        <placeholder name='Web_Services'>"
 
44
"          <menuitem action='File_Export_Flicker'/>"
 
45
"        </placeholder>"
 
46
"      </menu>"
 
47
"    </menu>"
 
48
"  </menubar>"
 
49
"  <popup name='ExportPopup'>"
 
50
"    <placeholder name='Web_Services'>"
 
51
"      <menuitem action='File_Export_Flicker'/>"
 
52
"    </placeholder>"
 
53
"  </popup>"
 
54
"</ui>";
 
55
 
 
56
 
 
57
static GthActionEntryExt action_entries[] = {
 
58
        { "File_Import_Flicker", "site-flickr",
 
59
          N_("_Flickr..."), NULL,
 
60
          N_("Download photos from Flickr"),
 
61
          GTH_ACTION_FLAG_ALWAYS_SHOW_IMAGE,
 
62
          G_CALLBACK (gth_browser_activate_action_import_flicker) },
 
63
        { "File_Export_Flicker", "site-flickr",
 
64
          N_("_Flickr..."), NULL,
 
65
          N_("Upload photos to Flickr"),
 
66
          GTH_ACTION_FLAG_ALWAYS_SHOW_IMAGE,
 
67
          G_CALLBACK (gth_browser_activate_action_export_flicker) },
36
68
};
37
69
 
38
70
 
 
71
typedef struct {
 
72
        GtkActionGroup *action_group;
 
73
} BrowserData;
 
74
 
 
75
 
 
76
static void
 
77
browser_data_free (BrowserData *data)
 
78
{
 
79
        g_free (data);
 
80
}
 
81
 
 
82
 
39
83
void
40
84
fl__gth_browser_construct_cb (GthBrowser *browser)
41
85
{
 
86
        BrowserData *data;
 
87
        GError      *error = NULL;
 
88
        guint        merge_id;
 
89
 
42
90
        g_return_if_fail (GTH_IS_BROWSER (browser));
43
91
 
44
 
        g_action_map_add_action_entries (G_ACTION_MAP (browser),
45
 
                                         actions,
46
 
                                         G_N_ELEMENTS (actions),
47
 
                                         browser);
48
 
        gth_menu_manager_append_entry (gth_browser_get_menu_manager (browser, GTH_BROWSER_MENU_MANAGER_WEB_EXPORTERS),
49
 
                                       GTH_MENU_MANAGER_NEW_MERGE_ID,
50
 
                                       "Flickr…",
51
 
                                       "win.export-flickr",
52
 
                                       NULL,
53
 
                                       "site-flickr");
54
 
        gth_menu_manager_append_entry (gth_browser_get_menu_manager (browser, GTH_BROWSER_MENU_MANAGER_WEB_IMPORTERS),
55
 
                                       GTH_MENU_MANAGER_NEW_MERGE_ID,
56
 
                                       "Flickr…",
57
 
                                       "win.import-flickr",
58
 
                                       NULL,
59
 
                                       "site-flickr");
 
92
        data = g_new0 (BrowserData, 1);
 
93
 
 
94
        data->action_group = gtk_action_group_new ("Flicker Actions");
 
95
        gtk_action_group_set_translation_domain (data->action_group, NULL);
 
96
        _gtk_action_group_add_actions_with_flags (data->action_group,
 
97
                                                  action_entries,
 
98
                                                  G_N_ELEMENTS (action_entries),
 
99
                                                  browser);
 
100
        gtk_ui_manager_insert_action_group (gth_browser_get_ui_manager (browser), data->action_group, 0);
 
101
 
 
102
        merge_id = gtk_ui_manager_add_ui_from_string (gth_browser_get_ui_manager (browser), ui_info, -1, &error);
 
103
        if (merge_id == 0) {
 
104
                g_warning ("building ui failed: %s", error->message);
 
105
                g_clear_error (&error);
 
106
        }
 
107
 
 
108
        g_object_set_data_full (G_OBJECT (browser), BROWSER_DATA_KEY, data, (GDestroyNotify) browser_data_free);
60
109
}