Product: Application Framework
          Type: new
         Title: Multiplatform shortcuts support
     Posted by: rvo...@openoffice.org
      Affected:   scp2, officecfg
         TaskId: i99296
<http://www.openoffice.org/issues/show_bug.cgi?id=99296>
Effective from: CWS macshortcuts01
           CWS:
<http://eis.services.openoffice.org/EIS2/cws.ShowCWS?Path=DEV300/macshortcuts01>
    CWS status: new


*Flags*
-------
API/ BASIC [ ]
Configuration [x]
File format change [ ]
Help/ Guide [ ]
Performance test [ ]
Translation [ ]
UI relevant [ ]


*Description*
-------------
Shortcuts configuration was changed (since DEV300_m37) and they are all in one 
file. See 
http://wiki.services.openoffice.org/wiki/Framework/Article/Accelerators_Configuration
 article.

They are all in one file, it's easy to configure platform dependent shortcuts, 
but current approach 
has still some limitations:

* you can't have more <value> pairs with xml:lang and install:module attributes,
* you can't have more <prop> pairs with the same oor:name, but width different 
install:module 
value,
* you can't have more <node> pairs with the same oor:name, but width different 
install:module 
values.
* you can't have <value> pairs with and without install:module attribute 
(applies to x-no-translate).

Stephan Bergmann helped me here (yes, credit for this goes to Stephan) and he 
introduced 
possibility to have more <value> pairs with xml:lang and install:module 
attributes. Now, you can 
configure platform dependent shortcut in this way.

<node oor:name="T_MOD1" oor:op="replace">
 <prop oor:name="Command"><value xml:lang="x-no-translate" install:module="x-no-
translate">I10N SHORTCUTS - NO TRANSLATE</value>
   <value xml:lang="de" install:module="unxwnt">.uno:SubScript</value>
   <value xml:lang="es" 
install:module="unxwnt">.uno:AlignHorizontalCenter</value>
   <value xml:lang="en-US" install:module="macosx">.uno:DesignerDialog</value>
  </prop>
</node>

As you can see, there's install:module attribute. For DE language, 
.uno:Subscript is binded to 
T_MOD1 on Windows, Unix platforms. For ES language, .uno:AlignHorizontalCenter 
is binded to 
T_MOD1 on Windows, Unix platforms. For all languages, .uno:DesignerDialog is 
binded to T_MOD1 
on Mac OS X only.

Two install:module attribute values are introduced now:

 * unxwnt - Use for Windows, Unix platforms
 * macosx - User for Mac OS X platform

Note: There's one special x-no-translate value. It's because there's no way how 
to use mixed 
<value> pairs - with and without install:module attribute. If you do use 
install:module attribute, you 
have to add install:module="x-no-translate" attribute to the first value pair 
with xml:lang="x-no-
translate".

You can read more visiting specification URL attached below.


+ officecfg/util/alllang.xsl
+ officecfg/util/data_val.xsl

Support for multiple values with xml:lang and install:module attributes. Thanks 
Stephan.


+ officecfg/registry/data/org/openoffice/Office/makefile.mk

Support for Accelerators-macosx.xcu and Accelerators-unxwnt.xcu


+ scp2/source/ooo/directory_ooo.scp

Accelerator's module files directory added.


+ scp2/source/ooo/file_ooo.scp

Package Accelerators-* module files.


+ officecfg/registry/data/org/openoffice/Office/Accelerators.xcu

Few Mac OS X shortcuts fixed as an example how to do it properly.

*Specification URL*
-------------------
http://wiki.services.openoffice.org/wiki/User:Rvojta/Multiplatform_shortcuts


Send feedback to d...@framework.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: features-unsubscr...@framework.openoffice.org
For additional commands, e-mail: features-h...@framework.openoffice.org

Reply via email to