1 /**
2 * This file is a part of the Cairo-Dock project
3 *
4 * Copyright : (C) see the 'copyright' file.
5 * E-mail    : see the 'copyright' file.
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 3
10 * of the License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #include <stdlib.h>
21 #include <string.h>
22 
23 #include "applet-struct.h"
24 #include "applet-menu.h"
25 #include "applet-notifications.h"
26 
27 
28 //\___________ Define here the action to be taken when the user left-clicks on your icon or on its subdock or your desklet. The icon and the container that were clicked are available through the macros CD_APPLET_CLICKED_ICON and CD_APPLET_CLICKED_CONTAINER. CD_APPLET_CLICKED_ICON may be NULL if the user clicked in the container but out of icons.
29 
30 CD_APPLET_ON_CLICK_BEGIN
31 	cd_quick_browser_show_menu (myApplet);
32 CD_APPLET_ON_CLICK_END
33 
34 
35 //\___________ Define here the entries you want to add to the menu when the user right-clicks on your icon or on its subdock or your desklet. The icon and the container that were clicked are available through the macros CD_APPLET_CLICKED_ICON and CD_APPLET_CLICKED_CONTAINER. CD_APPLET_CLICKED_ICON may be NULL if the user clicked in the container but out of icons. The menu where you can add your entries is available throught the macro CD_APPLET_MY_MENU; you can add sub-menu to it if you want.
_open_dir(GtkMenuItem * menu_item,GldiModuleInstance * myApplet)36 static void _open_dir (GtkMenuItem *menu_item, GldiModuleInstance *myApplet)
37 {
38 	cairo_dock_fm_launch_uri (myConfig.cDirPath);
39 }
40 CD_APPLET_ON_BUILD_MENU_BEGIN
41 	gchar *cLabel = g_strdup_printf ("%s (%s)", D_("Open folder"), D_("middle-click"));
42 	CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (cLabel, GLDI_ICON_NAME_OPEN, _open_dir, CD_APPLET_MY_MENU, myApplet);
43 	g_free (cLabel);
44 CD_APPLET_ON_BUILD_MENU_END
45 
46 
47 CD_APPLET_ON_MIDDLE_CLICK_BEGIN
48 	cairo_dock_fm_launch_uri (myConfig.cDirPath);
49 CD_APPLET_ON_MIDDLE_CLICK_END
50 
51 
cd_quick_browser_on_shortkey_menu(const char * keystring,GldiModuleInstance * myApplet)52 void cd_quick_browser_on_shortkey_menu (const char *keystring, GldiModuleInstance *myApplet)
53 {
54 	CD_APPLET_ENTER;
55 	cd_quick_browser_show_menu (myApplet);
56 	CD_APPLET_LEAVE ();
57 }
58 
59