From OpenSCADAWiki
Jump to: navigation, search

Primary project objects

Storage support for the translation properties (TR) actually involves processing the translation of primary program objects, so it is advisable to consider the behaviour of their algorithm in different multilingual modes at different locales-languages (BASIC or nonBASIC) and for the text field:

1. SINGLELANGUAGE storage:
  • READING => direct reading the single field
  • CHANGING, CLEARING => direct changing the single field
1.1. + SINGLELANGUAGE mode:
  • SETTING => direct changing the single field
1.2. + MULTILANGUAGE mode:
  • SETTING => BASIC — direct, nonBASIC — direct translation and base (in fact converting the storage to MULTILANGUAGE)
2. MULTILANGUAGE storage:
2.1. + MULTILANGUAGE mode:
  • READING => reading the translation and BASE filed, of which the selection is BASIC in the absence-emptiness of translation
  • SETTING => BASIC — direct, nonBASIC — direct translation and base
  • CHANGING => just changing the early marked as "<!>" or: changing, BASIC — marking as "<!>" for actual translations, nonBASIC — marking as "<!>" for the base language
  • CLEANING => cleaning the BASIC and all translations
2.2. + MULTILANGUAGE-DYNAMIC mode, the changed values transferred in the form "{base}\000{lang}\000{mess}":
  • READING => reading only BASIC and it registering in the message index
  • SETTING => direct for the MAIN and copying the translation and BASIC; updating for the message index and translation cache
  • CHANGING => just changing the early marked as "<!>" or: changing, BASIC — marking as "<!>" for actual translations; updating for the message index and translation cache
  • CLEANING => cleaning the BASIC and all translations