aboutsummaryrefslogtreecommitdiffstats
path: root/mbinputmgr.h
blob: 937f69e736f0e5f30290361b44d28e038527a964 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#ifndef __HAVE_MBINPUTMGR_H__
#define __HAVE_MBINPUTMGR_H__

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>

#include <libmb/mb.h>

#define MAX_METHODS 10


extern int errno;

typedef struct InputMethods 
{
  char           *name;
  char           *exec;
  char           *icon_name;
  void           *data;
} InputMethod;

typedef struct MBInpmgrState
{
  InputMethod Methods[MAX_METHODS];
  InputMethod *MethodSelected; 
  int         NMethods;
  pid_t        PidCurrent
;
} MBInpmgrState;

MBInpmgrState* mbinpmgr_init(void);

void
mbinpmgr_change_selected_method (MBInpmgrState *inpmgr, 
				 InputMethod   *new_method);

void
mbinputmgr_toggle_selected_method (MBInpmgrState *inpmgr);

int
mbinputmgr_method_active (MBInpmgrState *inpmgr);

#endif