~ubuntu-branches/debian/sid/openbox/sid

« back to all changes in this revision

Viewing changes to openbox/actions.h

  • Committer: Bazaar Package Importer
  • Author(s): Nico Golde, Nico Golde, Eugenio Paolantonio
  • Date: 2011-10-03 22:59:30 UTC
  • mfrom: (1.1.11 upstream)
  • Revision ID: james.westby@ubuntu.com-20111003225930-tdvyax5tx63dyoez
Tags: 3.5.0-1
[Nico Golde]
* New upstream release (Closes: #638783).
  - Fix crashes in the menu code (Closes: #563891).
* Add Brazilian translation to openbox.desktop,
  thanks Sérgio Cipolla (Closes: #627912).
* Remove 06_fix_swap_byte_order.patch, applied upstream.
* Bump debhelper dependency to >= 7.0.50~ due to override.
* Remove CHANGELOG from openbox.docs to prevent double installation.
* Add 02_fix_freedesktop_compliance.dpatch desktop file to
  /usr/share/applications.

[Eugenio Paolantonio]
* debian/patches:
  - Disabled 03_place_windows_in_quadrants.patch
  - Updated 01_rc.xml.patch and 06_fix_swap_byte_order.patch
  - Removed 04_fix_ftbfs_no-add-needed.patch and 20_24bits_support.patch
* debian/control:
  - Added myself to the Uploaders.
  - Build-Depends: removed libxau-dev, libxft-dev and python-xdg;
    added libimlib2-dev
  - openbox Suggests: added python-xdg
  - libobrender21 renamed to libobrender27
  - libobparser21 renamed to libobt0
* debian/rules:
  - Rewrote using a simpler debhelper syntax
  - Moved the install pass to openbox.install
* debian/*.{install,links,dirs}:
  - Updated.
* debian/openbox.xsession:
  - Removed. Openbox now ships it by default.

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 
19
19
#include "misc.h"
20
20
#include "frame.h"
21
 
#include "parser/parse.h"
 
21
#include "obt/xml.h"
 
22
#include "obt/keyboard.h"
 
23
 
22
24
#include <glib.h>
23
25
#include <X11/Xlib.h>
24
26
 
30
32
typedef struct _ObActionsClientData   ObActionsClientData;
31
33
typedef struct _ObActionsSelectorData ObActionsSelectorData;
32
34
 
33
 
typedef gpointer (*ObActionsDataSetupFunc)(ObParseInst *i,
34
 
                                           xmlDocPtr doc, xmlNodePtr node);
35
35
typedef void     (*ObActionsDataFreeFunc)(gpointer options);
36
36
typedef gboolean (*ObActionsRunFunc)(ObActionsData *data,
37
37
                                     gpointer options);
 
38
typedef gpointer (*ObActionsDataSetupFunc)(xmlNodePtr node);
38
39
typedef void     (*ObActionsShutdownFunc)(void);
39
 
typedef gboolean (*ObActionsInteractiveInputFunc)(guint initial_state,
40
 
                                                  XEvent *e,
41
 
                                                  gpointer options,
42
 
                                                  gboolean *used);
43
 
typedef void     (*ObActionsInteractiveCancelFunc)(gpointer options);
 
40
 
 
41
/* functions for interactive actions */
 
42
/* return TRUE if the action is going to be interactive, or false to change
 
43
   your mind and make it not */
 
44
typedef gboolean (*ObActionsIPreFunc)(guint initial_state, gpointer options);
 
45
typedef void     (*ObActionsIPostFunc)(gpointer options);
 
46
typedef gboolean (*ObActionsIInputFunc)(guint initial_state,
 
47
                                        XEvent *e,
 
48
                                        ObtIC *ic,
 
49
                                        gpointer options,
 
50
                                        gboolean *used);
 
51
typedef void     (*ObActionsICancelFunc)(gpointer options);
 
52
typedef gpointer (*ObActionsIDataSetupFunc)(xmlNodePtr node,
 
53
                                            ObActionsIPreFunc *pre,
 
54
                                            ObActionsIInputFunc *input,
 
55
                                            ObActionsICancelFunc *cancel,
 
56
                                            ObActionsIPostFunc *post);
44
57
 
45
58
struct _ObActionsData {
46
59
    ObUserAction uact;
56
69
void actions_startup(gboolean reconfigure);
57
70
void actions_shutdown(gboolean reconfigure);
58
71
 
59
 
/*! If the action is interactive, then i_input and i_cancel are not NULL.
60
 
  Otherwise, they should both be NULL. */
 
72
/*! Use this if the actions created from this name may be interactive */
 
73
gboolean actions_register_i(const gchar *name,
 
74
                            ObActionsIDataSetupFunc setup,
 
75
                            ObActionsDataFreeFunc free,
 
76
                            ObActionsRunFunc run);
 
77
 
61
78
gboolean actions_register(const gchar *name,
62
79
                          ObActionsDataSetupFunc setup,
63
80
                          ObActionsDataFreeFunc free,
64
 
                          ObActionsRunFunc run,
65
 
                          ObActionsInteractiveInputFunc i_input,
66
 
                          ObActionsInteractiveCancelFunc i_cancel);
 
81
                          ObActionsRunFunc run);
67
82
 
68
83
gboolean actions_set_shutdown(const gchar *name,
69
84
                              ObActionsShutdownFunc shutdown);
70
85
 
71
 
ObActionsAct* actions_parse(ObParseInst *i,
72
 
                            xmlDocPtr doc,
73
 
                            xmlNodePtr node);
74
 
 
 
86
ObActionsAct* actions_parse(xmlNodePtr node);
75
87
ObActionsAct* actions_parse_string(const gchar *name);
76
88
 
77
89
gboolean actions_act_is_interactive(ObActionsAct *act);