how to integrate with gpii

21
GPII Integration

Upload: dissemination-cloud4all

Post on 15-Jan-2015

215 views

Category:

Technology


0 download

DESCRIPTION

The Global Public Inclusive Infrastructure will provide a platform that will allow any platforms, applications and devices to automatically activate their accessibility features. Any ICT solution can integrate with the GPII in an easy way, therefore becoming automatically launchable and configurable. This presentation describes the steps needed to integrate any ICT solutions with the GPII.

TRANSCRIPT

Page 1: How to integrate with GPII

GPII Integration

Page 2: How to integrate with GPII

Integrating Your Application• You can usually integrate your app without writing any code

• Simply describe:

1. Which platforms you support

2. How you store your settings

3. How to launch and stop your application

4. How your settings relate to a common vocabulary

Page 3: How to integrate with GPII
Page 4: How to integrate with GPII

Basic Structure: { "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers": (…), "lifecycleManager": (…) }

Page 5: How to integrate with GPII

Give your application a name and a unique ID:

{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers": (…), "lifecycleManager": (…) }

Page 6: How to integrate with GPII

Describe the platforms your application runs on:

{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": { "OS": [ { "id": "win32", "version": ">=5.0" } ] }, "settingsHandlers": (…), "lifecycleManager": (…) }

Page 7: How to integrate with GPII

Describe how your app stores its settings:

{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers": [ { "type": "gpii.windows.registrySettingsHandler", "options": { "hKey": "HKEY_CURRENT_USER", "path": "Software\\Microsoft\\ScreenMagnifier" }, "capabilitiesTransformations": (…) }, {...} ], "lifecycleManager": (…) }

Page 8: How to integrate with GPII

Describe how to start and stop your app:{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers": (…), "lifecycleManager": { "start": [ "setSettings", { "type": "gpii.launch.exec", "command": "${{environment}.SystemRoot}\\System32\\Magnify.exe" } ], "stop": [ { "type": "gpii.launch.exec", "command": "${{environment}.SystemRoot}\\System32\\taskkill.exe /im Magnify.exe" }, "restoreSettings" ] } }

Page 9: How to integrate with GPII
Page 10: How to integrate with GPII

AccessForAll & Common Terms• AccessForAll a.k.a. ISO 24751

• Open registry-based architecture in progress

• Provides a common vocabulary for describing a user’s needs and preference

• Provides a “meeting place” for cross-platform preferences

• Philosophy: you speak your preferred language, but describe how to translate it

Page 11: How to integrate with GPII

{ "http://registry.gpii.org/common/magnification": [ {"value": 3.0} ], "http://registry.gpii.org/common/tracking": [ {"value": "mouse"} ], "http://registry.gpii.org/common/invertImages": [ {"value": true} ]}

Eexample preferences set:

Page 12: How to integrate with GPII

{ "http://registry.gpii.org/common/magnification": [ {"value": 3.0} ], "http://registry.gpii.org/common/tracking": [ {"value": "mouse"} ], "http://registry.gpii.org/common/invertImages": [ {"value": true} ]}

… But the windows magnifier stores magnification as a percentage

Page 13: How to integrate with GPII

“$HKEY_CURRENT_USER\\Software\\Microsoft\\ScreenMagnifier”: { “Magnification”: 200, [REG_DWORD INT] “Invert”: 1 [REG_DWORD BOOL], "FollowMouse": 1 [REG_DWORD BOOL]}

Page 14: How to integrate with GPII
Page 15: How to integrate with GPII

Defining how to translate and set settings:{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers”: [ { ... "capabilitiesTransformations": { "Magnification": { "transform": { "type": "gpii.transformer.linearScale", "inputPath": "http://registry.gpii.org/common/magnification", "outputPath": "value", "factor": 100 } }, ...

Page 16: How to integrate with GPII

Defining how to translate and set settings:{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers”: [ { ... "capabilitiesTransformations": { "Magnification": { "transform": { "type": "gpii.transformer.linearScale", "inputPath": "http://registry.gpii.org/common/magnification", "outputPath": "value", "factor": 100 } }, ...

Take this preference

Page 17: How to integrate with GPII

Defining how to translate and set settings:{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers”: [ { ... "capabilitiesTransformations": { "Magnification": { "transform": { "type": "gpii.transformer.linearScale", "inputPath": "http://registry.gpii.org/common/magnification", "outputPath": "value", "factor": 100 } }, ...

Take this preference

Rename it to this setting

Page 18: How to integrate with GPII

Defining how to translate and set settings:{ "name": "Windows Built-in Screen Magnifier", "id": "com.microsoft.windows.magnifier", "contexts": (…), "settingsHandlers”: [ { ... "capabilitiesTransformations": { "Magnification": { "transform": { "type": "gpii.transformer.linearScale", "inputPath": "http://registry.gpii.org/common/magnification", "outputPath": "value", "factor": 100 } }, ...

Rename it to this setting

Scale it

Take this preference

Page 19: How to integrate with GPII

Next Steps

Page 20: How to integrate with GPII

Get Involved

If you’re a developer, designer, tester, user, writer, organizer, maker, thinker, tinkerer, drawer, doer, helper...

We need you!

Page 21: How to integrate with GPII

Community

Website

Wiki

Mailing lists

Source code

Issue tracker

Chat

gpii.net

wiki.gpii.net

lists.gpii.net

github.com/gpii

issues.gpii.net

#fluid-work (freenode)