~siretart/lcd4linux/debian

« back to all changes in this revision

Viewing changes to drv_generic_keypad.c

  • Committer: Reinhard Tartler
  • Date: 2011-04-27 17:24:15 UTC
  • mto: This revision was merged to the branch mainline in revision 750.
  • Revision ID: siretart@tauware.de-20110427172415-6n4aptmvmz0eztvm
Tags: upstream-0.11.0~svn1143
ImportĀ upstreamĀ versionĀ 0.11.0~svn1143

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* $Id: drv_generic_keypad.c 1091 2010-01-21 04:26:24Z michael $
 
2
 * $URL: https://ssl.bulix.org/svn/lcd4linux/trunk/drv_generic_keypad.c $
 
3
 *
 
4
 * generic driver helper for keypads
 
5
 *
 
6
 * Copyright (C) 2006 Chris Maj <cmaj@freedomcorpse.com>
 
7
 * Copyright (C) 2006 The LCD4Linux Team <lcd4linux-devel@users.sourceforge.net>
 
8
 *
 
9
 * This file is part of LCD4Linux.
 
10
 *
 
11
 * LCD4Linux is free software; you can redistribute it and/or modify
 
12
 * it under the terms of the GNU General Public License as published by
 
13
 * the Free Software Foundation; either version 2, or (at your option)
 
14
 * any later version.
 
15
 *
 
16
 * LCD4Linux is distributed in the hope that it will be useful,
 
17
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
18
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
19
 * GNU General Public License for more details.
 
20
 *
 
21
 * You should have received a copy of the GNU General Public License
 
22
 * along with this program; if not, write to the Free Software
 
23
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
24
 *
 
25
 */
 
26
 
 
27
 
 
28
#include "config.h"
 
29
 
 
30
#include <stdio.h>
 
31
 
 
32
#include "debug.h"
 
33
#include "widget.h"
 
34
#include "widget_keypad.h"
 
35
 
 
36
#include "drv_generic_keypad.h"
 
37
 
 
38
static char *Section = NULL;
 
39
static char *Driver = NULL;
 
40
 
 
41
int (*drv_generic_keypad_real_press) () = NULL;
 
42
 
 
43
int drv_generic_keypad_init(const char *section, const char *driver)
 
44
{
 
45
    WIDGET_CLASS wc;
 
46
 
 
47
    Section = (char *) section;
 
48
    Driver = (char *) driver;
 
49
 
 
50
    /* register keypad widget */
 
51
    wc = Widget_Keypad;
 
52
    widget_register(&wc);
 
53
 
 
54
    return 0;
 
55
}
 
56
 
 
57
int drv_generic_keypad_press(const int num)
 
58
{
 
59
    WIDGET *w;
 
60
    int val = 0;
 
61
 
 
62
    if (drv_generic_keypad_real_press)
 
63
        val = drv_generic_keypad_real_press(num);
 
64
 
 
65
    w = widget_find(WIDGET_TYPE_KEYPAD, &val);
 
66
 
 
67
    if (w && w->class->draw)
 
68
        w->class->draw(w);
 
69
 
 
70
    return val;
 
71
}
 
72
 
 
73
int drv_generic_keypad_quit(void)
 
74
{
 
75
    return 0;
 
76
}