Joystick should now work.

This commit is contained in:
Pere Pujal i Carabantes 2011-05-27 21:14:15 +00:00
parent 21081427e3
commit 7041da207d
6 changed files with 890 additions and 599 deletions

View file

@ -8,7 +8,8 @@ http://www.tuxpaint.org/
$Id$ $Id$
2011.May.25 (0.9.22) 2011.May.27 (0.9.22)
* New Tools: * New Tools:
---------- ----------
* Label - A tool to add text to a drawing, which can be modified or * Label - A tool to add text to a drawing, which can be modified or
@ -112,7 +113,23 @@ $Id$
via config. via config.
* ASDW is QWERTY-centric; drop it, or add ways to support other * ASDW is QWERTY-centric; drop it, or add ways to support other
keyboard layouts. keyboard layouts.
* Who wrote this, so we can credit!?!?
* Joystick can be used to drive Tuxpaint
by Ankit Choudary <ankit.goaldecided@gmail.com> (GSOC 2010)
with integration and fixes by Pere Pujal i Carabantes
* Uses the first joystick found on the system, so should work out of the box
* Uses any of the buttons found in the joystick, no need for configuration.
* The hat of the joystick moves one pixel at a time, usefull to carefully place the pointer.
* The ball of the joystick should also trigger pointer motion. FIXME: This should work but is not tested.
* The responsivity of the joystick can be configured via command line or config files:
* --joystick-slownes sets a delay at each axis motion event.
Allowed values from 0 to 500, defaults to 15.
* --joystick-threshold sets the minimum value of axis motion to begin move the pointer.
Allowed values from 0 to 32766, defaults to 3200.
* --joystick_maxsteps sets the maximum number of pixels that the pointer will move at a time.
Allowed values from 1 to 7, defaults to 7.
* Magic Tool Improvememnts: * Magic Tool Improvememnts:
-------------------------- --------------------------
@ -228,6 +245,12 @@ $Id$
Albert Cahalan <albert@users.sourceforge.net>, Albert Cahalan <albert@users.sourceforge.net>,
Bill Kendrick <bill@newbreedsoftware.com> Bill Kendrick <bill@newbreedsoftware.com>
* Packaging all the metadata in the PNG file. Before a draw based on a starter
would have need 3 files: the draw, the starter and the .dat file, whith
the addition of the Labels tool this increased to 5 files. Now all this stuff
is packed in customs chunks inside the PNG file.
* New Starters: * New Starters:
------------- -------------
* Elephant * Elephant

View file

@ -378,6 +378,18 @@ Windows Users
Presents a clickable on-screen keyboard when using the Text Presents a clickable on-screen keyboard when using the Text
and Label tools. and Label tools.
joystick-slowness=number
Sets a delay at each axis motion, allowing to slow the joystick.
Allowed values are 0 to 500. Default value is 15.
joystick-threshold
Sets the minimum level of axis motion to start moving the pointer.
Allowed values are from 0 to 32766. Default value is 3200.
joystick-maxsteps
Sets the maximum pixels the pointer will move at once.
Allowed values are from 1 to 7. Default value is 7.
stampsize=SIZE stampsize=SIZE
Use this option to force Tux Paint to set the starting size of Use this option to force Tux Paint to set the starting size of
@ -760,8 +772,7 @@ Windows Users
--noquit --noquit
--noprint --noprint
--printdelay=SECONDS --printdelay=SECONDS
--printcfg --printcfg --altprintnever
--altprintnever
--altprintalways --altprintalways
--papersize=PAPERSIZE --papersize=PAPERSIZE
--nolockfile --nolockfile
@ -780,6 +791,9 @@ Windows Users
--nolabel --nolabel
--mouse-accessibility --mouse-accessibility
--onscreen-keyboard --onscreen-keyboard
--joystick-slowness
--joystick-threshold
--joystick-maxsteps
--sysfonts --sysfonts
--alllocalefonts --alllocalefonts
--mirrorstamps --mirrorstamps

View file

@ -155,6 +155,9 @@ windowed, NEGBOOL(fullscreen)
windowsize, MULTI(parsertmp_windowsize) windowsize, MULTI(parsertmp_windowsize)
mouse-accessibility, POSBOOL(mouseaccessibility) mouse-accessibility, POSBOOL(mouseaccessibility)
onscreen-keyboard, POSBOOL(onscreen_keyboard) onscreen-keyboard, POSBOOL(onscreen_keyboard)
joystick-slowness, MULTI(joystick_slowness)
joystick-threshold, MULTI(joystick_lowthreshold)
joystick-maxsteps, MULTI(joystick_maxsteps)
%% %%
void parse_one_option(struct cfginfo *restrict tmpcfg, const char *str, const char *opt, const char *restrict src) void parse_one_option(struct cfginfo *restrict tmpcfg, const char *str, const char *opt, const char *restrict src)

View file

@ -53,6 +53,9 @@ struct cfginfo
const char *wheely; const char *wheely;
const char *mouseaccessibility; const char *mouseaccessibility;
const char *onscreen_keyboard; const char *onscreen_keyboard;
const char *joystick_slowness;
const char *joystick_lowthreshold;
const char *joystick_maxsteps;
}; };
#define CFGINFO_MAXOFFSET (sizeof(struct cfginfo)) #define CFGINFO_MAXOFFSET (sizeof(struct cfginfo))

View file

@ -62,6 +62,9 @@ _tuxpaint()
--nolockfile \ --nolockfile \
--mouse-accessibility \ --mouse-accessibility \
--onscreen-keyboard \ --onscreen-keyboard \
--joystick-slowness \
--joystick-threshold \
--joystick-maxsteps \
--colorfile' -- $cur ) ) --colorfile' -- $cur ) )
# We don't accept filenames on the command-line yet -bjk 2009.09.09 # We don't accept filenames on the command-line yet -bjk 2009.09.09
# else # else

File diff suppressed because it is too large Load diff