finch/libgnt/gntmenuitem.h

Sat, 25 Nov 2017 21:42:28 +0800

author
Tom Li <tomli@tomli.me>
date
Sat, 25 Nov 2017 21:42:28 +0800
branch
release-2.x.y
changeset 38792
fdb68b9b02b8
parent 21453
a90cf329cd48
child 35379
ea1a0327001e
child 35393
00f876b129bc
child 37017
8e2b68c79fa1
permissions
-rw-r--r--

jabber.c: fix #17270, ignore STARTTLS when using BOSH.

Pidgin wants to establish a TLS connection with a STARTTLS request, but
it doesn't make any sense, since the XMPP stream is proxied by the BOSH
connection, which is already encrypted by HTTPS. It is impossible to
STARTTLS with BOSH.

According to XEP-0206: The client SHOULD ignore any Transport Layer Security
(TLS) feature since BOSH channel encryption SHOULD be negotiated at the HTTP
layer.

Failing to do it causes Pidgin fails to create any connection with BOSH to any
XMPP server with STARTTLS enabled.

https://developer.pidgin.im/ticket/17270

17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
1 /**
18358
2122fd567315 Generate doxy-help files for libgnt. And make it actually work.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17586
diff changeset
2 * @file gntmenuitem.h Menuitem API
2122fd567315 Generate doxy-help files for libgnt. And make it actually work.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17586
diff changeset
3 * @ingroup gnt
2122fd567315 Generate doxy-help files for libgnt. And make it actually work.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17586
diff changeset
4 */
2122fd567315 Generate doxy-help files for libgnt. And make it actually work.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17586
diff changeset
5 /*
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
6 * GNT - The GLib Ncurses Toolkit
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
7 *
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
8 * GNT is the legal property of its developers, whose names are too numerous
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
10 * source distribution.
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
11 *
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
12 * This library is free software; you can redistribute it and/or modify
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
13 * it under the terms of the GNU General Public License as published by
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
15 * (at your option) any later version.
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
16 *
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
17 * This program is distributed in the hope that it will be useful,
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
20 * GNU General Public License for more details.
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
21 *
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
22 * You should have received a copy of the GNU General Public License
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18624
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
25 */
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
26
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
27 #ifndef GNT_MENUITEM_H
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
28 #define GNT_MENUITEM_H
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
29
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
30 #include <glib.h>
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
31 #include <glib-object.h>
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
32
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
33 #define GNT_TYPE_MENU_ITEM (gnt_menuitem_get_gtype())
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
34 #define GNT_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GNT_TYPE_MENU_ITEM, GntMenuItem))
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
35 #define GNT_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GNT_TYPE_MENU_ITEM, GntMenuItemClass))
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
36 #define GNT_IS_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GNT_TYPE_MENU_ITEM))
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
37 #define GNT_IS_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GNT_TYPE_MENU_ITEM))
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
38 #define GNT_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GNT_TYPE_MENU_ITEM, GntMenuItemClass))
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
39
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
40 #define GNT_MENU_ITEM_FLAGS(obj) (GNT_MENU_ITEM(obj)->priv.flags)
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
41 #define GNT_MENU_ITEM_SET_FLAGS(obj, flags) (GNT_MENU_ITEM_FLAGS(obj) |= flags)
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
42 #define GNT_MENU_ITEM_UNSET_FLAGS(obj, flags) (GNT_MENU_ITEM_FLAGS(obj) &= ~(flags))
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
43
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
44 typedef struct _GntMenuItem GntMenuItem;
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
45 typedef struct _GntMenuItemPriv GntMenuItemPriv;
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
46 typedef struct _GntMenuItemClass GntMenuItemClass;
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
47
14905
23f31a7acc73 [gaim-migrate @ 17612]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14678
diff changeset
48 #include "gntmenu.h"
23f31a7acc73 [gaim-migrate @ 17612]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14678
diff changeset
49
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
50 struct _GntMenuItemPriv
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
51 {
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
52 /* These will be used to determine the position of the submenu */
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
53 int x;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
54 int y;
18624
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
55 char trigger;
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
56 char *id;
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
57 };
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
58
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
59 typedef void (*GntMenuItemCallback)(GntMenuItem *item, gpointer data);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
60
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
61 struct _GntMenuItem
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
62 {
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
63 GObject parent;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
64 GntMenuItemPriv priv;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
65
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
66 char *text;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
67
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
68 /* A GntMenuItem can have a callback associated with it.
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
69 * The callback will be activated whenever the suer selects it and presses enter (or clicks).
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
70 * However, if the GntMenuItem has some child, then the callback and callbackdata will be ignored. */
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
71 gpointer callbackdata;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
72 GntMenuItemCallback callback;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
73
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
74 GntMenu *submenu;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
75 };
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
76
15991
1efb6bd8ba3f Some define changes. This helps in generating the python bindings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15886
diff changeset
77 struct _GntMenuItemClass
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
78 {
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
79 GObjectClass parent;
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
80
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
81 void (*gnt_reserved1)(void);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
82 void (*gnt_reserved2)(void);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
83 void (*gnt_reserved3)(void);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
84 void (*gnt_reserved4)(void);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
85 };
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
86
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
87 G_BEGIN_DECLS
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
88
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
89 /**
21430
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
90 * @return GType for GntMenuItem.
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
91 */
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
92 GType gnt_menuitem_get_gtype(void);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
93
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
94 /**
21430
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
95 * Create a new menuitem.
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
96 *
21430
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
97 * @param text Label for the menuitem.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
98 *
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
99 * @return The newly created menuitem.
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
100 */
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
101 GntMenuItem * gnt_menuitem_new(const char *text);
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
102
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
103 /**
21430
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
104 * Set a callback function for a menuitem.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
105 *
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
106 * @param item The menuitem.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
107 * @param callback The callback function.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
108 * @param data Data to send to the callback function.
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
109 */
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
110 void gnt_menuitem_set_callback(GntMenuItem *item, GntMenuItemCallback callback, gpointer data);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
111
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
112 /**
21430
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
113 * Set a submenu for a menuitem. A menuitem with a submenu cannot have a callback.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
114 *
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
115 * @param item The menuitem.
6069836ad7a7 applied changes from 3909ebae8691679c60bfa96d20562c60e0999b4a
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21428
diff changeset
116 * @param menu The submenu.
17586
5beb8d987e84 applied changes from 016401bd409e6229fae0ab1e80d9fef9365511b3
Eric Polino <aluink@pidgin.im>
parents: 15991
diff changeset
117 */
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
118 void gnt_menuitem_set_submenu(GntMenuItem *item, GntMenu *menu);
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
119
18624
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
120 /**
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
121 * Get the submenu for a menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
122 *
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
123 * @param item The menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
124 *
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
125 * @return The submenu, or @c NULL.
21242
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
126 *
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
127 * @since 2.3.0
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
128 */
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
129 GntMenu *gnt_menuitem_get_submenu(GntMenuItem *item);
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
130
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
131 /**
18624
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
132 * Set a trigger key for the item.
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
133 *
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
134 * @param item The menuitem
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
135 * @param trigger The key that will trigger the item when the parent manu is visible
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
136 */
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
137 void gnt_menuitem_set_trigger(GntMenuItem *item, char trigger);
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
138
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
139 /**
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
140 * Get the trigger key for a menuitem.
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
141 *
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
142 * @param item The menuitem
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
143 *
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
144 * @return The trigger key for the menuitem.
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
145 *
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
146 * @see gnt_menuitem_set_trigger
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
147 */
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
148 char gnt_menuitem_get_trigger(GntMenuItem *item);
03d4eb6b6684 Allow trigger keys for menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18358
diff changeset
149
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
150 /**
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
151 * Set an ID for the menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
152 *
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
153 * @param item The menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
154 * @param id The ID for the menuitem.
21242
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
155 *
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
156 * @since 2.3.0
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
157 */
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
158 void gnt_menuitem_set_id(GntMenuItem *item, const char *id);
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
159
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
160 /**
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
161 * Get the ID of the menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
162 *
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
163 * @param item The menuitem.
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
164 *
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
165 * @return The ID for the menuitem.
21242
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
166 *
3909ebae8691 Missing changelog entries and @since tags from 51bd63176b5012bb0d6fed5d3ee919a68ec3a173.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20821
diff changeset
167 * @since 2.3.0
20821
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
168 */
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
169 const char * gnt_menuitem_get_id(GntMenuItem *item);
51bd63176b50 Allow binding key-shortcuts to menuitems.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19859
diff changeset
170
21246
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
171 /**
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
172 * Activate a menuitem.
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
173 * Activating the menuitem will first trigger the 'activate' signal for the
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
174 * menuitem. Then the callback for the menuitem is triggered, if there is one.
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
175 *
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
176 * @param item The menuitem.
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
177 *
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
178 * @return Whether the callback for the menuitem was called.
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
179 *
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
180 * @since 2.3.0
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
181 */
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
182 gboolean gnt_menuitem_activate(GntMenuItem *item);
1e4738b18075 Add gnt_menuitem_activate, and 'activate' signal for GntMenuItem.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21242
diff changeset
183
14675
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
184 G_END_DECLS
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
185
be8af28d1980 [gaim-migrate @ 17341]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
186 #endif /* GNT_MENUITEM_H */

mercurial