36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
1 |
GtkHotkey Library - Cross Platform Library For Using Desktop Wide Hotkeys |
2 |
--------------------------------------------------------------------------------
|
|
3 |
||
4 |
GtkHotkey is copyright Mikkel Kamstrup Erlandsen, March, 2008 |
|
5 |
||
6 |
The GtkHotkey library is licensed under the GNU LGPL version 3 which can be |
|
7 |
found in the COPYING file of this distribution. Make sure you read and |
|
8 |
understand the license before employing libgtkhotkey. For references |
|
9 |
to GPL version 3 (without the 'L' in front) see doc/gpl-3.0.txt. |
|
10 |
||
46
by "Mikkel Kamstrup Erlandsen"
Fix test cases were we had a negated assertion |
11 |
The source code for GtkHotkey can be downloaded from the following url: |
12 |
||
13 |
http://launchpad.net/gtkhotkey |
|
14 |
||
36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
15 |
Idea and Future |
16 |
-----------------------
|
|
17 |
I wrote GtkHotkey because I needed a platform independent way to manage and |
|
18 |
bind desktop hotkeys. Gnome applications can register hotkeys via GConf and |
|
39
by "Mikkel Kamstrup Erlandsen"
Small tweaks to README |
19 |
Metacity, but I wanted desktop neutrality and more flexibility. |
36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
20 |
|
21 |
I would like to see the functionality end up in Gtk+ some day, but there |
|
22 |
are obstacles, and I needed a solution fast. Should it turn out that such |
|
23 |
functionality is not feasible in Gtk+ itself, this library is still simple and |
|
24 |
has a narrow well defined goal, which should make it maintainable in the future. |
|
25 |
||
26 |
To ease maintainability unit tests has been implemented using the gtest |
|
27 |
framework found in glib versions >= 2.15. |
|
28 |
||
39
by "Mikkel Kamstrup Erlandsen"
Small tweaks to README |
29 |
It is the goal to also include a set of Gtk+ widgets for managing hotkeys as |
30 |
well as a global configuration dialog for editing all registered hotkeys. |
|
31 |
||
36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
32 |
Design
|
33 |
------
|
|
34 |
The idea of the library is to keep it as simple as possible, while sticking |
|
35 |
to an object oriented design, without falling back to C-isms (read: '#ifdefs') |
|
36 |
where it would otherwise be tempting. |
|
37 |
||
39
by "Mikkel Kamstrup Erlandsen"
Small tweaks to README |
38 |
It can be argued that the code base is too small to be put in a separate library. |
39 |
However the functionality is very well defined and would probably appear |
|
40 |
oddly placed in some bigger helper library for GTk+ apps, where it would likely |
|
41 |
live in a hodge podge of unrelated functionality. |
|
36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
42 |
|
43 |
API Guarantees |
|
44 |
--------------
|
|
39
by "Mikkel Kamstrup Erlandsen"
Small tweaks to README |
45 |
0.MINOR.MICRO: API stability between versions with same minor version |
36
by "Mikkel Kamstrup Erlandsen"
Documentation. |
46 |
|
47 |
1.MINOR.MICRO: (not reached yet) All 1.*.* will be API and ABI compatible |
|
48 |
||
49 |
Credits
|
|
50 |
-------
|
|
51 |
Currently src/x11 contains some code scrubbed from the Tomboy project. The |
|
52 |
stolen code is released under LGPL 2 or later, and I included in GtkHotkey |
|
53 |
as a LGPL 3 dependency. |