Mercurial > pidgin
annotate console/libgnt/test/keys.c @ 15649:e9a87896557e
I like being able to compile :-)
(some name changes in the perl stuff)
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Fri, 16 Feb 2007 16:25:26 +0000 |
parents | a766441af5ea |
children |
rev | line source |
---|---|
14200
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
1 #include <gnt.h> |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
2 #include <gntbox.h> |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
3 #include <gntentry.h> |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
4 #include <gntlabel.h> |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
5 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
6 static gboolean |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
7 print_keycode(GntEntry *entry, const char *text, gpointer null) |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
8 { |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
9 char *s = g_strdup_printf("%s ", text); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
10 gnt_entry_set_text(entry, s); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
11 g_free(s); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
12 if (text[0] == 27) |
14310
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
13 { |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
14 if (strncmp(text + 1, "[M ", 3) == 0) |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
15 { |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
16 int x = (unsigned)text[4]; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
17 int y = (unsigned)text[5]; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
18 if (x < 0) x += 256; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
19 if (y < 0) y += 256; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
20 x -= 33; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
21 y -= 33; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
22 s = g_strdup_printf("ldown %d %d", x, y); |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
23 gnt_entry_set_text(entry, s); |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
24 g_free(s); |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
25 } |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
26 else if (strncmp(text + 1, "[M#", 3) == 0) |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
27 gnt_entry_set_text(entry, "up"); |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
28 else |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
29 return FALSE; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
30 return TRUE; |
a766441af5ea
[gaim-migrate @ 17000]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
14200
diff
changeset
|
31 } |
14200
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
32 else |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
33 return TRUE; |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
34 } |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
35 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
36 int main() |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
37 { |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
38 GntWidget *window, *entry; |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
39 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
40 gnt_init(); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
41 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
42 freopen(".error", "w", stderr); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
43 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
44 window = gnt_hbox_new(FALSE); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
45 gnt_box_set_toplevel(GNT_BOX(window), TRUE); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
46 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
47 gnt_box_add_widget(GNT_BOX(window), gnt_label_new("Press any key: ")); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
48 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
49 entry = gnt_entry_new(NULL); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
50 gnt_box_add_widget(GNT_BOX(window), entry); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
51 g_signal_connect(G_OBJECT(entry), "key_pressed", G_CALLBACK(print_keycode), NULL); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
52 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
53 gnt_widget_set_position(window, getmaxx(stdscr) / 2 - 12, getmaxy(stdscr) / 2 - 3); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
54 gnt_widget_show(window); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
55 |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
56 gnt_main(); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
57 gnt_quit(); |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
58 return 0; |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
59 } |
5300e2f1fed3
[gaim-migrate @ 16872]
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
60 |