view doc/jobs @ 12:bff0d802cb7d

Implemented some internationalization support. Implemented i18n.I18nTranslation class to load strings and descriptions from files (with unittest). MTUnknownTypeException removed: its pointless since it's always ignored without even any message. A few fixes to mde.mergetag.read.Reader regarding partial reading. committer: Diggory Hardy <diggory.hardy@gmail.com>
author Diggory Hardy <diggory.hardy@gmail.com>
date Fri, 22 Feb 2008 11:52:20 +0000
parents b940f267419e
children 0047b364b6d9
line wrap: on
line source

In progress:

To do:
*   Submit new version of parseTo
*	Why doesn't input.config filtering via headers "Configs" work?
*	OutOfMemoryException is not currently checked for − it should be at least in critical places (use high-level catching of all errors?).
*	Sensitivity adjustments. From es_a_out:
        /+ FIXME: revise.
        + I can't see any point using HALF_RANGE here, since it should really be used dependant on
        + the device attached, not the axis. Also what about adjusted range like X3's throttle?
        +
        + Sensitivity: is this the right place to adjust it? For things like throttle where the
        + ends of the interval must remain fixed, multiplying cannot be used to adjust and adjusting
        + the curve via a power function doesn't seem to be what we want. For things where the
        + end points needn't remain fixed, multiplying seems the right thing to do, but cannot be
        + done here since we don't know the end points can be changed.
        
        real y = x;
        uint conf = s.pop();
        enum : uint {
            HALF_RANGE	= 0x8000_0000u,
            SENSITIVITY	= 0x0080_0000u,
        }
        // Convert ranges into standard intervals (with or without reverse values)
        if (conf & HALF_RANGE) y = (y + 32767.0) * 1.5259254737998596e-05;	// range  0.0 - 1.0
        else y *= 3.0518509475997192e-05;					// range -1.0 - 1.0
        real a;
        if (conf & SENSITIVITY) a = s.pop();
        /+ When a global sensitivity is available (possibly only use if it's enabled)...
        else a = axis.sensitivity;
        y = sign(y) * pow(abs(y), a);		// sensitivity adjustment by a +/
        myThis.axis[cast(inputID) s.pop()] = y;
        +/

Done (for git log message):
*   Implemented i18n.I18nTranslation class to load strings and descriptions from files (with unittest).
*   MTUnknownTypeException removed: its pointless since it's always ignored without even any message.
*   A few fixes to mde.mergetag.read.Reader regarding partial reading.